Android 片段选项卡适配器getItem调用两次
我已经为三个选项卡创建了三个不同片段的滑动选项卡。所有三个选项卡都从webservice获取动态数据。加载时,我的第一个选项卡Tab1显示Tab2数据。FragmentPagerAdapter中的getItem方法被调用两次Android 片段选项卡适配器getItem调用两次,android,android-fragments,Android,Android Fragments,我已经为三个选项卡创建了三个不同片段的滑动选项卡。所有三个选项卡都从webservice获取动态数据。加载时,我的第一个选项卡Tab1显示Tab2数据。FragmentPagerAdapter中的getItem方法被调用两次 @Override public Fragment getItem(int arg0) { switch (arg0) { case 0: return new Tab1;
@Override
public Fragment getItem(int arg0) {
switch (arg0) {
case 0:
return new Tab1;
case 1:
return new Tab2;
case 2:
return new Tab3;
default:
break;
}
如何仅在加载Tab1时加载片段1。如何仅在加载Tab1时加载片段1。 你不能 我相信您正在使用ViewPager。这是调用getItem()两次的原因。这就是ViewPager的工作原理。它加载上一个片段、当前片段和下一个片段,以便在页面之间平滑滚动 在您的情况下,您在tab1上,所以第一页和第二页被加载(上一页不加载,因为它不存在) 从tab1滚动到tab2时,将加载tab3,依此类推
您可以使用ViewPager.setOffscreenPageLimit设置左侧和右侧将兑现的选项卡数量。但最小值为1,也是默认值。如何仅在加载选项卡1时加载片段1。 你不能 我相信您正在使用ViewPager。这是调用getItem()两次的原因。这就是ViewPager的工作原理。它加载上一个片段、当前片段和下一个片段,以便在页面之间平滑滚动 在您的情况下,您在tab1上,所以第一页和第二页被加载(上一页不加载,因为它不存在) 从tab1滚动到tab2时,将加载tab3,依此类推
您可以使用
ViewPager.setOffscreenPageLimit设置将兑现左右选项卡的数量,但最小值为1,也是默认值。这是预期行为。ViewPager会缓存一个附加页面,这没关系。您应该更改逻辑以处理此问题。我的Tab1显示Tab2数据。tab1显示正确数据的任何可能方式(即使附加页面是cachedit)都是预期的行为。ViewPager会缓存一个附加页面,这没关系。您应该更改逻辑以处理此问题。我的Tab1显示Tab2数据。tab1显示正确数据的任何可能方式,即使附加页面已被缓存,我已使用ViewPager。但是我的Tab1没有显示它的数据。它显示Tab2数据。任何解决方案。是的,我用过ViewPager。但是我的Tab1没有显示它的数据。它显示Tab2数据。任何解决办法。