Android 将字符串从一个活动发送到另一个活动的片段
我有两个活动(A和B)和一个片段F 片段F包含在活动B中 我想将字符串从活动A发送到片段F 你怎么能这么做?Android 将字符串从一个活动发送到另一个活动的片段,android,android-intent,android-fragments,android-activity,Android,Android Intent,Android Fragments,Android Activity,我有两个活动(A和B)和一个片段F 片段F包含在活动B中 我想将字符串从活动A发送到片段F 你怎么能这么做? 谢谢 这与在活动之间交换数据几乎相同。您应该在开始时使用getActivity(),以便在片段中进行访问 检查以下代码: 在活动A中: 在活动B的片段F中 首先,您将实际将该字符串发送到活动B。例如: Intent intent = new Intent(this, YourActivityClass.class); intent.putExtra("myString", "this i
谢谢 这与在活动之间交换数据几乎相同。您应该在开始时使用getActivity(),以便在片段中进行访问 检查以下代码: 在活动A中: 在活动B的片段F中
首先,您将实际将该字符串发送到活动B。例如:
Intent intent = new Intent(this, YourActivityClass.class);
intent.putExtra("myString", "this is your string");
startActivity(intent);
Bundle args = new Bundle();
args.putString("myString", getIntent().getExtras().getString("myString"))
yourFragment.setArguments(args);
然后稍后从活动B中读取该字符串,并在执行片段事务之前注入到片段中。例如:
Intent intent = new Intent(this, YourActivityClass.class);
intent.putExtra("myString", "this is your string");
startActivity(intent);
Bundle args = new Bundle();
args.putString("myString", getIntent().getExtras().getString("myString"))
yourFragment.setArguments(args);
稍后,在片段中使用getArguments()
或者,在片段中使用以下命令直接访问活动意图并获取所需的值:
String str = getActivity().getIntent().getStringExtra("myString");
有关更多信息,请阅读.Fragment.java文件中的。添加以下代码
public static String name= null;
public void setName(String string){
name = string;
}
String stringYouWantToSend;
Fragment fragment = new Fragment();
fragment.setName(stringYouWantToSend);
在要从中发送字符串的MainActivity.java中,添加以下代码
public static String name= null;
public void setName(String string){
name = string;
}
String stringYouWantToSend;
Fragment fragment = new Fragment();
fragment.setName(stringYouWantToSend);
@桑托什的答案更简单。