我有两个片段类:
Mainfragment和subfragment。
我在Mainfragment中有public List<object> l1
,我在此列表中添加了项目。
现在我想在子片段中访问此列表l1。
我用过 - subfragment sf = (subfragment) getActivity().getFragmentManager();
但它显示错误。
如何在子片段中访问此List l1?
答案 0 :(得分:1)
最好让活动对其片段应用更改,而不是直接在它们之间传递值。
您可以通过实现一个界面来实现这一目标:
- 在MainActivity上实现一个接口,比如说带有onQuery(Bundle数据)和onResult(Bundle数据)方法的interfaceListener。
接下来在每个片段的onAttach()内部,实现如下:
public void onAttach(Activity activity) {
super.onAttach(activity);
try{
interfaceListener = (interfaceListener) activity;
} catch (ClassCastException e) {
throw new ClassCastException(activity.toString()
+ " must implement interfaceListener");
}
}
通过这种方式,您可以访问subFragment中的MainFragment列表。