【注:】我的博客里基本没有原创,因为我不会写代码,我只是代码的搬运工。我之所以把这些内容记在博客里,是因为这些确实有用;我之所以有些文章没有注明引用出处,仅仅是因为我脑残,忘了保存出处。再次谢谢各路大神!!多谢赐教!!
我们知道,一个Activity可能包含了多个Fragment,很快我们发现在多个Fragment间作滑动操作时,这时我们希望Fragment像Activity一样使用 onpuse()等方法来刷新数据,但很明显它们并没有被调用。
经过查询资料,我们发现Fragment和Activity的生命周期是不一样的,那么怎样才能在Fragment滑动时作更新数据等操作呢?
请参考如下核心代码:
protected boolean isCreated = false;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 标记
isCreated = true;
}
/**
* 此方法目前仅适用于标示ViewPager中的Fragment是否真实可见
*/
@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
super.setUserVisibleHint(isVisibleToUser);
if (!isCreated) {
return;
}
if (isVisibleToUser) {
initWordList();
}
}