我有很多活动,在MainActivity中有两个按钮(B1-B2)。在B1(Activity1)中,用户将写入相同的数据,并在完成返回MainActivity之后 在B2(Activity2)中将从(Activity1)
获取所有日期(活性1)
Intent i = new Intent(getApplicationContext(), Activity2.class);
i.putExtra("new_variable_name","value");
(活性2)
Bundle extras = getIntent().getExtras();
if (extras != null) {
String value = extras.getString("new_variable_name");
}
此代码不能与我合作!! ....任何解决!!
答案 0 :(得分:0)
来自SO帖子:
Intent i =new Intent(Info.this, GraphDiag.class).putExtra("new_variable_name", "value");
startActivity(i);
获取数据
String value = getIntent().getStringExtra(<StringName>);
答案 1 :(得分:0)
您的代码是正确的我认为上下文 getApplicationContext()导致了问题。在活动范围内,最好使用 MyActivity.this 作为上下文参数。试试这个:
Intent i =new Intent(Activity1.this, Acivity2.class);
i.putExtra("new_variable_name", "value");
startActivity(i);
获取额外值并执行空检查:
Bundle b = getIntent().getExtras();
if(b!=null){
String value = b.getString("new_variable_name");//ensured that the string is not null
}