InboxDetailActivity.java
:
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");
我在NullPointerException
to = b.getString("To");
答案 0 :(得分:1)
Bundle b = i.getExtras();
getExtras()
返回null
。
答案 1 :(得分:0)
同意约翰的答案,增加可能的解决方案。
您正在做的是创建一个包,在其中插入值,然后传递此包。 而且你只是使用它的密钥逐个获取所有值。
我正在使用bundle,但我只是使用putExtra方法直接添加所需的值。到目前为止我没有遇到任何问题。我建议你使用put extra并检查它是否有效。
我想知道是什么让你以这种方式应用于捆绑包?你刚刚在某处读过它并开始应用这种方法吗?或者你有一些选择,经过一些考虑,你发现应用这种方法更好,或者你的要求说明了这一点。因为通常我和我的同伴不使用捆绑并直接传递附加内容。这对我来说每次都有用。
答案 2 :(得分:0)
使用此而不是捆绑
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");