2

问题

我正在使用我喜欢的 PagerSlidingTabStrip 库。我所拥有的实现是让选项卡按照项目自述文件中的说明工作的最低要求。我唯一要调整的是,例如,当我有 3 个选项卡并从选项卡 1 触摸选项卡 3 时,viewpager 会在滚动到选项卡 3 时显示选项卡 2 的内容。我怀疑这是一个 viewpager 问题。

问题

如何在不显示选项卡 2 的内容的情况下从选项卡 1 跳转到选项卡 3?我将在选项卡 2 上有一张地图,所以我不喜欢让它尝试加载该 UI。

4

2 回答 2

1

您可以覆盖片段的 setUserVisibleHint 事件以了解其是否对用户可见,然后加载您的数据。类似于以下内容:

boolean isContentLoaded = false;

@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
   super.setUserVisibleHint(isVisibleToUser);
   if (isVisibleToUser && !isContentLoaded ) {
   loadContent(); 
   isContentLoaded = true;
   }
}
于 2014-03-25T02:12:45.167 回答
0

你可以使用这个:

viewPager.setCurrentItem(2,false); // first(tabNumber, (smoothScroll) make it false)
于 2017-10-11T19:02:10.243 回答