我想问一下如何将值从片段a传递到活动B然后再传递回片段。我尝试使用bundle来传递值,但它会提供错误的数据。
谢谢。
答案 0 :(得分:0)
如果要将活动B中的数据发送到活动A,请使用代码
在活动B中
Intent intent = new Intent ();
intent.putExtra ("string_1", "hello");
intent.putExtra ("string_2", "world");
intent.putExtra ("int_1", 1000);
intent.putExtra ("long_1", 2000l);
activity.setResult (Activity.RESULT_OK, intent);
finish()
所以在Activity A代码中
@Override
protected void onActivityResult (int requestCode, int resultCode, Intent intent)
{
if (resultCode == Activity.RESULT_OK)
{
String string_1 = intent.getStringExtra ("string_1", "");
String string_2 = intent.getStringExtra ("string_2", "");
int int_1 = intent.getIntExtra ("int_1", 0);
long long_1 = intent.getLongExtra ("long_1", 0);
}
}
所以现在你得到了A中的数据。 因此,通过使用片段中定义的方法,您可以将数据发送到目标片段
喜欢说
如果您定义
,则在片段中public void refreshFragment(String s1) {
// here s1 will be the data you send from activity Q
}
希望这有帮助