android中父子活动之间的通信

时间:2017-01-20 16:41:19

标签: android

我有一个活动A,它使用startActivityForResult()启动一个新的活动B. Activity B有一个自定义视图,它还包含一个textView T.现在,Activity A需要发送一个String来更新Activity B中的textView T.实现这个目的的最佳方法是什么?

3 个答案:

答案 0 :(得分:0)

你可以使用Intent putExtra方法发送这样的字符串。

    Intent mIntent = new Intent(this, Example.class);
    mIntent.putExtra(key, value);
       StartActivity (activity2);

并且在活动B中像这样收到它

String value = getIntent().getExtras().getString(key);

答案 1 :(得分:0)

在活动A中。

Intent i = new Intent(this, ActivityB.class);
i.putExtra("string_textview", YourString);
startActivity(ii);

在活动B中。

String text = getIntent().getExtras().getString("string_textview");
textview.setText(text);

希望它有所帮助(:

答案 2 :(得分:0)

在2个活动之间传递数据使用Bundles

Intent startActivitB = new Intent(ActivityA.this, ActivityB.class);

Bundle b = new Bundle();
b.putString("new_text", "Abcdefg");

startActivivitB.putExtras(b);
startAcitvity(startAcivitytB);

在活动B上获得Bundle:

Bundle b = getIntent().getExtras();
String new_text = b.getString("new_text");

然后你可以更新textview

textview.setText(new_text);