2013-04-25 100 views

回答

6

首先,你实际上是字符串发送到活动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); 

之后,在片段中使用来检索该包。


或者,使用下面的在你的片段直接访问活动的意图,并获取您需要的值:

String str = getActivity().getIntent().getStringExtra("myString"); 

欲了解更多信息,请阅读this

+0

@Santhosh答案是简单的。 – Dayerman 2014-01-18 22:06:33

8

这与您在活动之间交换数据几乎相同。您应该在开始时使用getActivity()以便访问碎片。

检查下面的代码:

在活动A:

Intent intent = new Intent(this,ActivityB.class); 
intent.putExtra("data",data); //data is a string variable holding some value. 
startActivity(intent); 

在活动B的片f

String data = getActivity().getIntent().getStringExtra("data"); 
0

在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);  
相关问题