Android开发:Fragment的onResume

一.前言

onResume()Fragment 类中的一个生命周期方法,通常我们在该方法中可以进行一些初始化和更新操作。切换Fragment可以通过ViewPagerFragmentTransaction这两种方式,但是这两种方式触发onResume方法的时机却是不同的。

二.正文

1.ViewPager切换

当使用 ViewPager 切换 Fragment 时,系统会自动调用被切换的 Fragment 的生命周期方法。

当一个 Fragment 被创建添加到 ViewPager 中并且可见时,系统会调用该 Fragment 的 onResume()生命周期方法。

当一个Fragment再次被切换成ViewPager当前页面并且可见时,系统会调用该 Fragment 的 onResume() 生命周期方法。

2.FragmentTransaction切换

当使用 FragmentTransaction 替换 Fragment 时,系统不会自动调用生命周期方法。如果需要在替换 Fragment 时调用生命周期方法,需要手动调用。

当一个 Fragment 被创建添加到 FragmentTransaction 中管理并且show可见时,系统会调用该 Fragment 的onResume()生命周期方法。

此后再通过FragmentTransaction来隐藏或显示该Fragment时,系统都不会调用该 Fragment 的 onResume()生命周期方法,但会调用该Fragment 的 onHiddenChanged(boolean hidden) 回调函数。

因此当我们使用FragmentTransaction来管理Fragment时,为了在Fragment可见时都能实现onResume方法的效果,可以考虑以下方案:

(1)使用show()方法后手动调用Fragment的onResume() 方法;

(2)重写Fragment的 onHiddenChanged(boolean hidden),在里面再次实现和onResume的逻辑;

三.结语

本文基于自身知识经验编写,只供学习参考,不知之处还请指正,欢迎一起探讨交流!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

开发大观园

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值