子类fragment调用父容器Fragment方法,

一个折磨了我好久的东东,最终解决办法通过子类fragment调用父容器Fragment方法

在这转发一下,原文地址:https://blog.csdn.net/a872822645/article/details/77095259

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


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

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

ShouYeMainFragment  嵌套   NewsFragment  。此时如果NewsFragment  想调用 ShouYeMainFragment 里面的方法怎么做呢?


解决办法:

通过NewsFragment  获取  父类Fragment 的容器管理器的所有Fragment 集合。然后 遍历。找到父容器Fragment.执行它的方法。

代码如下:

    

List<Fragment>list=(List<Fragment>)NewsFragment.this.getFragmentManager().getFragments();
for(Fragment f:list){
    if(f!=null&&f instanceof ShouYeMainFragment){
        ((ShouYeMainFragment) f).changView();
        break;
    }
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值