Android——FragmentPagerAdapter中fragment的生命周期

FragmentPagerAdapter中fragment的生命周期

今天用TabLayout+ViewPager的方式,实现了顶部的导航栏切换效果(https://blog.csdn.net/NNadn/article/details/89239877)。

在onResume方法中实现对数据的请求,发现并不是在fragment显示的时候会调用对应fragment的onResume方法,也不会在显示其他fragment现实的时候,调用这个fragment的onPause和onStop方法,不解。
后来好好看了下,发现了规律。

我一共使用了4个fragment,按照index一下分别简称为0、1、2、3。
下面只提到了关键方法。

  • 进入activity的时候,0的onStart、onResume,紧接1的onStart、onResume,01就绪;
  • 划到1,2的onStart、onResume,012就绪;
  • 划到2,3的onStart、onResume,0的onPause、onStop,123就绪;
  • 划到3,1的onPause、onStop,23就绪;
  • 再划回2,1的onStart、onResume,123就绪;
  • 划回1,0的onStart、onResume,3的onPause、onStop,012就绪。
  • ···

规律就是,当前的fragment,前一个,后一个,都已经执行完毕onResume,处于就绪状态。

你可能感兴趣的:(Android)