Sul*_*man 2 java android android-fragments
我一直在搜索并且没有找到嵌套片段与父片段通信的最佳方法.Android文档声明:
所有Fragment-to-Fragment通信都是通过相关的Activity完成的.两个碎片永远不应该直接通信.
假设我有一个Gallery应用程序,有一个ViewPagerFragment(父级)和ImageFragment(子级),用于在单击时全屏显示图像.我需要将文件的ArrayList从我的父片段传递给子片段.什么是正确的方法呢?
1)创建于ArrayList中的一个getter 父片段,并使用getParentFragment()在孩子片段访问此方法?
2)实现一个接口并浏览Activity,但是如果它没有ID,我如何从Activity中找到子片段?
3)或者在父片段中使用它:
ChildFragment fragment =(ChildFragment)getChildFragmentManager().findFragmentById(R.id.child_fragment_id);
只需在子片段中使用setter .
但是我又如何获得childFragment的ID?
提前谢谢大家
Mut*_*ran 10
如果您想要将您的子片段与您的父片段进行通信,您可以使用getParentFragment()子片段中的方法.
例
public class ExampleParentFragment extends Fragment {
public int getCount() {
return 10;
}
}
public class ChildFragment extends Fragment {
void doAction() {
Fragment parentFragment = getParentFragment();
if(parentFragment instanceof ExampleParentFragment) {
int count = ((ExampleParentFragment) parentFragment).getCount();
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4313 次 |
| 最近记录: |