1,Activity 向fragment传值
在activity中
MyFragment fragment_inf = new MyFragment();Bundle bundle = new Bundle();bundle.putString( "name", name); fragment_inf.setArguments(bundle);
然后再将fragment加入到相应布局中去
在fragment中
String name;
Bundle bundle=getArguments(); if (bundle==null) Toast.makeText(getActivity(),"名称传递失败",Toast.LENGTH_SHORT).show(); else name = bundle.getString("name");
2,fragment 向activity中传值,采用接口回调的方式
a, 在fragment中写一个内部接口
public interface Mytext{
public abstract void setString(String );
}
b, 并在fragment里面实例化这个接口并调用这个方法(建议在重写的oncreate方法里写)
String t=" hello ";
Mytext text = new MyActivity();
text.setString(t);
c, 在MyActivity中实现这个接口
public class MyActivity extends FragmentActivity implements{
String text;
........
public void setTtext(Strring str){
if(str!=null&&str.eqauls(""))
text = str;
}
}
3, fragment 向同一个Activity下的fragment 传值
比如说,现在有fragment1和fragment2
在fragment1 中我们可以调用 Fragment2 frag2 = (Fragment2)getFragmentManager().findFragmentbyId(R.id.frag2); //这个R.id.frag2 就是frag2 所绑定的布局
获得了对象后,就自然可以调用里面的方法了