如何将任何数据从活动发送到另一个活动?

时间:2014-06-27 20:18:15

标签: android-intent bundle

我有很多活动,在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");


}  

此代码不能与我合作!! ....任何解决!!

2 个答案:

答案 0 :(得分:0)

来自SO帖子:

Intent i =new Intent(Info.this, GraphDiag.class).putExtra("new_variable_name", "value");
startActivity(i);

获取数据

String value  = getIntent().getStringExtra(<StringName>);

Also look here

答案 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
}