我在通过intent 获得传递兑现过的时候报错,空指针,我是getMap方法进行传值,代码如下
1
2
3
4
5
6
7
8
9
|
public void getMap(View view){
Intent i = new Intent( this , BreweryYourTopBeers. class );
Log.d( "map" , e.beerBreweryId);
i.putExtra( "breweryID" , e.beerBreweryId);
i.setClass( this , BreweryMap. class );
startActivity(i);
}
|
从我的日志中能够看到 在传值之前e.beerBreweryId 确实有值,我在下面的代码中获取改值
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
public class BreweryMap extends ActionbarMenu {
BeerData e;
String beerID;
GoogleMap map;
//从bundle 中获得beer 详细信息
protected void onCreate(Bundle savedInstanceState) {
super .onCreate(savedInstanceState);
setContentView(R.layout.activity_brewerymap);
//get brewery data
//get beer data
Intent intent = getIntent();
Bundle extras = intent.getExtras();
String breweryID = extras.getString( "brewreyID" );
map = ((MapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap();
String url = "http://api.brewerydb.com/v2/brewery/" + breweryID + "?key=myKey&format=json&withLocations=y" ;
Log.d( "map" , url);
new myAsyncTask( this ,map).execute(url);
} } |
我每次获得值都是NULL ,不知道是什么原因.
处理方法
有一行写错误了.
把
String breweryID = extras.getString("brewreyID");
换成
String breweryID = extras.getString("breweryID");
原文地址:http://www.itmmd.com/201411/134.html
该文章由 萌萌的IT人 整理发布,转载须标明出处。
相关推荐
本篇将深入探讨"android页面跳转传值"这个主题,重点关注Intent的使用以及如何通过Bundle来传递数据。 1. **Intent的基本概念** Intent是Android中的一个类,它表示应用程序想要完成的一个动作(如打开网页、发送...
在Android应用开发中,Intent是连接各个组件(如Activity、Service等)的桥梁,它用于启动其他组件并传递数据。本篇文章将详细讲解如何在Activity之间通过Intent进行数据的传递和回传,以及如何在实际的项目中运用...
本篇将详细讲解如何在Android Studio 3.1环境下,通过Intent实现Activity间的简单传值。 一、Intent的使用 Intent是Android系统中用于启动另一个组件(如Activity、Service)的一种消息对象。在Activity间传递数据...
"Android 广播传值"是指通过Android系统的BroadcastReceiver机制,实现不同组件或进程之间的数据交换。BroadcastReceiver是Android四大组件之一,它能够监听并接收系统或应用程序发送的广播消息,包括字符串、整型等...
首先,我们可以通过Intent来传递基本类型的数据。如果在Activity中有一个Fragment实例,可以直接通过setArguments(Bundle args)方法将数据包装进Bundle对象,然后在Fragment的onCreate()或onCreateView()方法中通过...
这个"TabHost页面传值小例子"很适合初学者理解如何在不同的Tab之间传递数据。下面,我们将深入探讨`TabHost`的工作原理以及如何在不同Tab之间传递数据。 `TabHost` 是Android SDK中的一个类,它允许我们在应用中...
首先,页面跳转在Android中主要通过Intent对象来实现。Intent是一种用来表达应用程序之间意图的类,可以理解为一个消息对象,它告诉系统你要执行什么操作。在实现页面跳转时,我们通常创建一个新的Intent实例,并...
在Android应用开发中,Fragment是Android SDK中的一个重要组件,它允许开发者在单个活动中实现多屏或多视图的界面。Fragment的设计初衷是为了更好地适应不同屏幕尺寸的设备,比如手机和平板,同时也方便开发者构建...
最常见的方法是通过Intent在Activity与Fragment间传递数据,但这并不适用于Fragment间的直接通信。对于Fragment与Activity的交互,我们可以利用setArguments()和getArguments()方法,或者通过接口回调实现。 1. **...
同样,Service也可以通过Intent返回结果到Activity。首先,在Service中创建一个BroadcastReceiver,用于接收发送的数据,并在适当的时候(例如定时任务完成后)使用`LocalBroadcastManager`发送广播。在Activity中...
接着,我们创建一个新的Intent,把点击的数据(如字符串`clickedItem`)通过`putExtra()`方法放入Intent的额外数据中,然后启动目标Activity(`BActivity`)。 在BActivity中,我们需要重写`onCreate()`方法,从中...
1. Intent传递:在Activity之间,我们通常使用Intent对象来传递数据,然而,由于Fragment不是独立的启动单元,它不能直接通过Intent传递数据给Activity。但可以通过回调方法,由Activity接收Intent数据后再传递给...
对于Java的基本数据类型(如int、String、boolean等)和它们的包装类,我们可以直接通过Intent的putExtra()和getExtra()方法来传递。例如: ```java Intent intent = new Intent(this, TargetActivity.class); ...
"Service通过广播向多个Activity传值"是一种有效的跨组件通信方式,利用了Android系统的BroadcastReceiver机制。以下将详细阐述这个知识点。 首先,Service是Android中的一个组件,它在后台运行,不与用户交互。它...
- 如果从Activity启动一个新的Fragment,我们可以通过Intent将数据传递给Fragment。在创建Fragment实例时,可以使用Bundle对象来添加数据,然后在Fragment的onCreate()或onCreateView()方法中通过getArguments()...
下面将详细讲解如何在Android中实现这些功能,以及如何集成扫描线、拍照回显和传值。 一、调用相机 1. 请求权限:在Android 6.0(API级别23)及以上版本,需要在运行时请求`Manifest.permission.CAMERA`权限。在...
Intent传值** 除了实现Activity之间的跳转之外,Intent还可以用于传递数据。例如,在跳转之前可以使用`putExtra()`方法将数据附加到Intent对象上: ```java Intent intent = new Intent(); intent.putExtra("one...
在Android开发中,Activity是应用程序的基本构建块,用于展示用户界面和处理用户...这个DK压缩包文件可能包含了实现这些功能的示例代码,通过学习和分析这些代码,你将更深入地理解如何在Android应用中实践这些技术。
可以在Android应用中通过Intent启动浏览器并加载指定URL。例如: ```java Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.example.com")); startActivity(browserIntent); ``` ####...