@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
super.setUserVisibleHint(isVisibleToUser);
if (isVisibleToUser) {
new LoadGlobalNews().execute();
}
}
我在片段类中使用上面的方法来执行异步任务,我的问题是每次从片段中轻扫一下,并返回异步任务时重新执行任何其他替代
答案 0 :(得分:1)
使用ViewPager.setOffscreenPageLimit
。
设置应保留在页面两侧的页数 处于空闲状态的视图层次结构中的当前页面。页面超出此范围 在需要时,将从适配器重新创建限制。
示例强>
mYourViewPager.setOffscreenPageLimit(mYourPagerAdapter.getCount());
更新
private boolean mLoadedNews;
@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
super.setUserVisibleHint(isVisibleToUser);
if (isVisibleToUser && !mLoadedNews) {
new LoadGlobalNews().execute();
mLoadedNews = true;
}
}