Fragment的可见再载入的方法(真正的Fragment的OnResume和OnPause)
一 起因
我们在做应用的过程中,一个应用的界面可能是多个Fragment切换而成的。可是如果在每次应用启动的时候就去载入大量的网络数据(如果你的每一个Fragment都须要载入网络数据。你也能够理解为初始化大量资源)肯定是不好的,能不能有一种方法能够在我们看到我们的Fragment时再去载入相应的Fragment的数据呢?
当然是有的。
二 解决
Fragment尽管有onResume和onPause的。可是这两个方法是Activity的方法,调用时机也是与Activity同样,和ViewPager搭配使用这种方法就非常鸡肋了,根本不是你想要的效果,这里介绍一种方法。
@Override public void setUserVisibleHint(boolean isVisibleToUser) { super.setUserVisibleHint(isVisibleToUser); if (isVisibleToUser) { //相当于Fragment的onResume } else { //相当于Fragment的onPause } }在你推断
isVisibleToUser这个參数为true时。说明这个Fragment已经在你的眼前了,这时你再去载入你须要的数据就能够了。
是不是非常easy呢?