【发布时间】:2017-09-27 06:48:02
【问题描述】:
private Boolean isStarted = false;
private Boolean isVisible = false;
@Override
public void onStart() {
super.onStart();
isStarted = true;
if (isVisible && isStarted){
loadData();
}
}
//
@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
super.setUserVisibleHint(isVisibleToUser);
isVisible = isVisibleToUser;
if (isVisible && isStarted) {
loadData();
}
}
我想要做的是,当我启动应用程序时,数据来自 db,当我点击 tab2 时,它显示在 tab1 中,它再次点击 db 并带来数据并显示。当我回到 tab1 时出现问题,然后它再次点击 db 并带来数据并再次在 tab1 中设置数据,但它的数据已经加载。
我已经设置了viewPager.setOffscreenPageLimit(1);。
需要帮助吗? 谢谢
【问题讨论】:
-
你在 viewPager 中添加了多少片段?
-
我只添加了 1 个片段,标签是 4 个。所有查询在片段中都相似,只有标题不同,所以我重复使用相同的片段。
-
即使重复使用片段,也会创建不同的实例。将 offScreenPageLimit 设置为片段数。
-
通过设置
viewPager.setoffscreenPageLimit(fragmentcount)不起作用。 -
在添加片段的地方发布您的 MainActivity 代码
标签: android android-fragments android-viewpager android-tablayout