NullPointerException异常getExtras()的getString( “到”)

问题描述:

InboxDetailActivity.javaNullPointerException异常getExtras()的getString( “到”)

Intent i = new Intent(InboxDetailActivity.this,Compose.class); 
Bundle b = new Bundle(); 
b.putString("To", ConstantData.inbox_from); 
Log.d("From Value", ConstantData.inbox_from); 
b.putString("Subject", "RE:" + ConstantData.inbox_subject); 
Log.d("Subject Value", ConstantData.inbox_subject); 
b.putString("FromId", ConstantData.inbox_fromid); 
Log.d("From Id Value",ConstantData.inbox_fromid); 
i.putExtras(b); 
startActivity(i); 

Compose.java

Intent i = getIntent(); 
Bundle b = i.getExtras(); 

to = b.getString("To"); 
subject = b.getString("Subject"); 
toId = b.getString("FromId"); 

我在to = b.getString("To");

+0

的'Intent.putExtras(束)'方法说,“钥匙必须包括一个包前缀“。您能否重试示例代码以考虑这一点? – 2011-04-09 06:49:57

Bundle b = i.getExtras(); 

越来越NullPointerExceptiongetExtras()返回null

同意约翰的答案增加可能的解决方案。

你正在做的是创建一个包,在其中插入值,然后传递这个包。 而且,您只需使用其中的按键逐个获取所有值。

我正在使用捆绑包,但我直接使用putExtra方法直接添加所需的值。到目前为止我还没有遇到任何问题。我建议你使用额外的东西,并检查它是否有效。

我想知道是什么让你用这种方式捆绑?你刚刚读过它并开始应用这种方法吗?或者你有一些选择,并经过一些考虑后,你发现应用这种方法或你的要求说明更好。因为通常我和我的同龄人不使用捆绑包并直接传递额外信息。这对我而言每次都适用。使用,而不是束

+0

你的建议 – shripal 2011-04-09 07:18:52

 i.putString("To", ConstantData.inbox_from); 
     Log.d("From Value", ConstantData.inbox_from); 
     i.putString("Subject", "RE:" + ConstantData.inbox_subject); 
     Log.d("Subject Value", ConstantData.inbox_subject); 
     i.putString("FromId", ConstantData.inbox_fromid); 
     Log.d("From Id Value",ConstantData.inbox_fromid); 

和在另一个类中..

 to = getIntent().getString("To");