使用show和hide来显隐的Fragment
在viewpage进行 嵌套的时候, 最好私用第三中。android
FragmentManager除了addFragment和replaceFragment以外还有showFragment和hideFragment来作Fragment的显隐,这样能够提生页面切换的速度,是一种用空间换时间的方式。可是这样使用的Fragment在被hide的时候是不会调用onPause方法的。由于它只是在屏幕中不可见了,可是没有Pause。这时候咱们须要监听onHiddenChanged方法app
@Override
public void onHiddenChanged(boolean hidden) {
super.onHiddenChanged(hidden);
if(hidden){
//TODO now visible to user
} else {
//TODO now invisible to user
}
}
可是咱们须要注意一点,那就是,若是用户直接按home键退出了,咱们的程序也没有对按home键事件进行监听,在按home键时调用hideFragment,那么onHiddenChanged事实上没有被调用,反而是onPause被调用了。因此咱们须要针对这样的状况作特殊的处理。好比在home键退出时显示调用一下hideFragment或者在onPause中也发信号说本Fragment不可见了,这都是能够的。ide
在ViewPager中的Fragment
如今安卓市场上基本上的app都会作tab页,而tab页基本都是经过android自带的ViewPager实现的。ViewPage