Fragment嵌套Fragment时候。子类fragment调用父容器Fragment方法

业务场景:有的时候咱们的页面多是Activity 嵌套多个Fragment ..其中某个Fragment 又嵌套多个Fragment。this

其中某个子Fragment  定义为  NewsFragment  。父容器 Fragment 定义为 ShouYeMainFragmentspa

ShouYeMainFragment  嵌套   NewsFragment  。此时若是NewsFragment  想调用 ShouYeMainFragment 里面的方法怎么作呢?code

 

解决办法:blog

经过NewsFragment  获取  父类Fragment 的容器管理器的全部Fragment 集合。而后 遍历。找到父容器Fragment.执行它的方法。get

代码以下:it

List<Fragment>list=(List<Fragment>)NewsFragment.this.getFragmentManager().getFragments();
for(Fragment f:list){
    if(f!=null&&f instanceof ShouYeMainFragment){
        ((ShouYeMainFragment) f).changView();
        break;
    }
}
相关文章
相关标签/搜索