我有两个活动(A和B)和片f片段F被包含在活动B我想从活动A发送给弦乐片f怎样才能做到这一点? 谢谢!
Answer 1:
首先,你实际上是字符串发送到活动B.例如:
Intent intent = new Intent(this, YourActivityClass.class);
intent.putExtra("myString", "this is your string");
startActivity(intent);
再后来读你的活动B中的字符串和执行片段交易之前注入到你的片段。 例如:
Bundle args = new Bundle();
args.putString("myString", getIntent().getExtras().getString("myString"))
yourFragment.setArguments(args);
后来,使用getArguments()
在你的片段来检索包。
或可替换地,使用下面的在你的片段直接访问活动的意图,并获取您需要的值:
String str = getActivity().getIntent().getStringExtra("myString");
欲了解更多信息,请阅读此 。
Answer 2:
这几乎是一样的,你会活动之间交换数据。 你应该只是为了在片段访问使用getActivity()的开始。
检查下面的代码:
在活动A:
Intent intent = new Intent(this,ActivityB.class);
intent.putExtra("data",data); //data is a string variable holding some value.
startActivity(intent);
在活性的片段为F b
String data = getActivity().getIntent().getStringExtra("data");
Answer 3:
在Fragment.java文件中添加以下代码,
public static String name= null;
public void setName(String string){
name = string;
}
在MainActivity.java从中你要发送的字符串添加以下代码,
String stringYouWantToSend;
Fragment fragment = new Fragment();
fragment.setName(stringYouWantToSend);
文章来源: Send String from an Activity to a Fragment of another Activity