How to determine when Fragment becomes visible in ViewPager

后端 未结 26 1742
心在旅途
心在旅途 2020-11-22 00:24

Problem: Fragment onResume() in ViewPager is fired before the fragment becomes actually visible.

For example, I have 2 fragments with

26条回答
  •  轮回少年
    2020-11-22 00:41

    Override setPrimaryItem() in the FragmentPagerAdapter subclass. I use this method, and it works well.

    @Override
    public void setPrimaryItem(ViewGroup container, int position, Object object) {
        // This is what calls setMenuVisibility() on the fragments
        super.setPrimaryItem(container, position, object);
    
        if (object instanceof MyWhizBangFragment) {
            MyWhizBangFragment fragment = (MyWhizBangFragment) object;
            fragment.doTheThingYouNeedToDoOnBecomingVisible();
        }
    }
    

提交回复
热议问题