Fragment onResume() isn't called when using FragmentPagerAdapter

后端 未结 2 2039
悲哀的现实
悲哀的现实 2021-02-10 00:23

I need my fragments to always call a certain function when they are the active fragment, so I put it in onResume(), but it isn\'t being called.

Fragment A



        
2条回答
  •  梦毁少年i
    2021-02-10 01:26

    I had the same problem while ago.

    Create a new interface and implement it by both of your Fragments:

    public interface OnPageSelectedListener {
        void onPageSelected();
    }
    

    In parent activity implement android.support.v4.view.ViewPager.OnPageChangeListener and call Fragment method like this:

    @Override
    public void onPageSelected(int i) {
        OnPageSelectedListener fragment = (OnPageSelectedListener ((PlaceListPagerAdapter)pager.getAdapter()).getFragment(i);
        fragment.onPageSelected();
    }
    

    PS: Name of the new interface and its method is a bit confusing, so be careful or change it.

提交回复
热议问题