最近要折腾两个fragment之间传数据的问题,在网上看了很多文章,基本都是使用两种方法:
1,两个fragment之间使用getFragmentManager().beginTransaction().replace(R.id.realtabcontent(容器), myJDEditFragment(要跳转的fragment))addToBackStack(null).commit();
然后用Bundle添加数据传递过去。
2,定义接口传递,用MainActivity作为中介,fragmentA———Main__Activity----fragmentB
3,就是我现在要说的一种,也是用MainActivity作为中介,在MainActivity里面定义字段,添加set和get的方法,fragmentA调用set方法,fragmentB调用get的方法传递数据
MainActivity :(定义字段)
public class MainActivity extends Activity {
private String path;
public String getPath() {
return path;
}
public void setPath(String path) {
this.path = path;
}
}
fragmentA:(设置数据)
public classfragmentA {
((MainActivity) getActivity()).setPath(path);
}
fragmentB:(获取数据)
public classfragmentB{
((MainActivity) getActivity()).getPath(path);
}