fragmnt被覆盖和跳转其他activity的时候,onHiddenChanged方法没有调用

本文解决了一个关于Android开发中Fragment在不同场景下可见性变化的问题。作者通过调整onResume()和自定义onHiddenChanged()方法实现了精确控制Fragment界面更新的需求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题描述,我有一个app,首页一个activity  和4个按钮可以切换fragment,切换方式是hide和show,
我在fragment中有一个onHiddenChanged(hidden: Boolean)是为了在fragment可见的时候做出一些操作,
但是在fragment被覆盖和跳转一个activity再回到fragment的时候,并没有调用这个方法,这就让我很郁闷,
我在跳转的那个界面做了一些操作,回到fragment需要刷新界面更新ui,当然我可以用特殊的单对单方法来
自己处理这个方法,但是这样路口多了自己调用会比较繁琐,于是我想到了onResume(),但是这个方法是
根据activity的生命周期来定义的,也就是说,当我fragment1 和fragment2里面onresume方法都有一个网络
请求,那么当我在fragment1跳转一个activity之后回来,那么我的fragment1和fagement2都会调用这个方法,
但是我的期望是只调用fragment里面的方法,网上找了很多,都没有讲到这一点,之后我发现我可以在onresume
方法里面自己调用一个onHiddenChanged()但是还得传一个参数,经过发现 isVisible这个状态可以用来区分,

那么问题解决了,我可以实现自己的需求了。

要是你也遇到这个问题,有什么不懂得可以留言哦。

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值