美文网首页Android面试知识
fragment的可见与不可见在不同情况下的监听

fragment的可见与不可见在不同情况下的监听

作者: 钉某人 | 来源:发表于2018-05-24 15:18 被阅读1421次

    1.setUserVisibleHint的使用场景:FragmentPagerAdapter+ViewPager

    @Override
    public void setUserVisibleHint(boolean isVisibleToUser) {
             super.setUserVisibleHint(isVisibleToUser);
            if (isVisibleToUser) {
                  // 相当于onResume()方法--获取焦点
           } else {
               // 相当于onpause()方法---失去焦点
            }
    }
    

    2.onHiddenChanged的使用场景: 一般我们打开应用时底部会有四五个tab键,使用add()+show()来显示和隐藏Fragment,hide()跳转新的Fragment时,旧的Fragment回调onHiddenChanged(),不会回调onStop()等生命周期方法,而新的Fragment在创建时是不会回调onHiddenChanged(),所以一般会和onresume()方法配合使用。具体场景自己来判断.

    @Override
    public void onHiddenChanged(boolean hidden) {
                   if (hidden) {
                     //相当于Fragment的onPause()
                   } else {
                      // 相当于Fragment的onResume()
                }
        }
    

    相关文章

      网友评论

        本文标题:fragment的可见与不可见在不同情况下的监听

        本文链接:https://www.haomeiwen.com/subject/hijsjftx.html