繁体   English   中英

当我在ViewPager中设置CurrentItem时,ViewPager加载5页数据,为什么?

[英]When i setCurrentItem in the ViewPager, the ViewPager load data of 5 pages,why?

ViewPager默认为一个页面,该页面应通过setOffscreenPageLimit().方法setOffscreenPageLimit().在视图层次结构中当前页面的任一侧setOffscreenPageLimit(). 但是当我设置CurrentItem时,它仍然加载两个首页的数据,这意味着它请求5个页面的数据。 我如何避免这种情况,仅加载3页数据?

FragmentPagerAdapter adapter = new WorksFragmentAdapter(getSupportFragmentManager(),ids);
viewPager.setAdapter(adapter);
viewPager.setCurrentItem(currentItem);

尝试覆盖setUserVisibleHint中的setUserVisibleHint并将数据加载到其中。

这是一个对我有用的示例。

public class ViewPagerFragmentSample extends ListFragment{
    ...  
    @Override
    public void setUserVisibleHint(boolean isVisibleToUser) {
        super.setUserVisibleHint(isVisibleToUser);
        if (isVisibleToUser) {
            new AsyncListViewLoader().execute(); //Replace with your method
        }
    }
    ...
}

希望这可以帮助!!!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM