簡體   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