我需要在两个活动之间传递信息,但由于某种原因,信息不会被发送/接收。
LogCat不会给我任何错误。 dubugger清楚地显示某些被添加到intent(variabl:mExtras)中,但是很难准确地解释添加的内容。之后,它给了我“找不到来源”,并没有帮助我。
但首先要做的事情。我到目前为止做得对吗?
发送:
Intent intent = new Intent ( this, TaskListActivity.class );
intent.putExtra ( ProjectManager.ID, mId.toString () );
startActivity ( intent );
Recieving:
Intent intent = getIntent ();
mId = UUID.fromString ( intent.getStringExtra ( ProjectManager.ID ) );
答案 0 :(得分:2)
意图后添加以下代码:
Bundle extras = intent.getExtras();
String exampleString = extras.getString(ProjectManager.ID);
答案 1 :(得分:1)
什么是ProjectManager.ID
?,您应该在收到来自putExtra的数据时传递相同的唯一key
,即使接收数据的方式有误,请查看以下代码:
发送:
Intent intent = new Intent ( this, TaskListActivity.class );
intent.putExtra (ProjectManager.ID, mId.toString () );
startActivity ( intent );
Recieving:
Bundle extras = intent.getExtras();
if(extras!=null){
String _Str = extras.getString(ProjectManager.ID);
}
答案 2 :(得分:0)
尝试使用此功能:
Bundle extras = getIntent().getExtras();
String id;
if (extras != null) {
id= extras.getString(key);
}
答案 3 :(得分:0)
在FirstActivity.java中编写这些代码。
Intent i = new Intent(FirstActivity.this,SecondActivity.class);
i.putExtra("KEY",value);
startActivity(i);
在SecondActivity.java中:
Bundle extras=getIntent().getExtras();
String name=extras.getString("key"); //if data you are sending is String.
int i=extras.getInt("key"); //if data you are sending is integer.
答案 4 :(得分:0)
要检索新活动中的额外内容:
String valueOfExtra;
Intent i = getIntent();
//check first
if(i.hasExtra("extra1")){
valueOfExtra = i.getStringExtra("extra1");
}