为了账号安全,请及时绑定邮箱和手机立即绑定

为什么切换fragment的时候会调用下一个页面的onResume周期方法?

为什么切换fragment的时候会调用下一个页面的onResume周期方法?

青春有我 2019-01-05 09:22:53
问题描述如题 打开第一个页面的时候第二个页面的onResume事件就会触发 打开第二个页面的时候第三个页面的onResume就会触发 fragment的生命周期是onAttach()->onCreate()->onCreateView()->onActivityCreated()->onStart()->onResume() onResume不是应该显示以后可操作的状态时才应该触发的吗?问题出现的环境背景及自己尝试过哪些方法我猜测可能viewpager显示fragment的方式是不是同时显示3个 以防止打开下一页的时候出现卡顿?相关代码// 请把代码文本粘贴到下方(请勿用图片代替代码)ViewPager viewPager = findViewById(R.id.viewPager);viewPager.setCurrentItem(2);你期待的结果是什么?实际看到的错误信息又是什么?有没有方法让一个页面打开的时候才触发onResume事件?
查看完整描述

1 回答

?
桃花长相依

TA贡献1860条经验 获得超8个赞

我的猜测没错 在打开某一页的时候的确会提前实现下一页的所有生命周期 经过搜索发现真正处理页面显示的方法是setUserVisibleHint:

    @Override
    public void setUserVisibleHint(boolean isVisibleToUser) {        super.setUserVisibleHint(isVisibleToUser);
        ....
    }


查看完整回答
反对 回复 2019-01-05
  • 1 回答
  • 0 关注
  • 1260 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信