我有一个 ViewPager,其中每个页面显示使用 UniversalImageLoader 和图像 URL 加载全屏图像。
我正在使用 viewPager.setCurrentItem(n, false) 将 ViewPager 打开到任何图像,而不总是第一张图像。
问题是,当我调用 viewPager.setCurrentItem(n, false) 时,它会调用 instantiateItem (n+1) 次并且通用图像加载器会加载所有这些(n+1) 张图片,这对我来说效率很低。
我希望我的 ViewPager 将当前项目设置为 (n) 并且只实例化前面和后面的页面。可能吗?
最佳答案
试试这个:
yourViewPager.setOffscreenPageLimit(1);
然后您的 View 寻呼机只加载 (n-1) 、 (n) 和 (n+1) 页。\ 此外,如果您在 View 寻呼机中使用 fragment ,您可以通过类似这样的方式强制它加载 fragment #n:
public class MyFragment extends Fragment {
@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
super.setUserVisibleHint(isVisibleToUser);
if (isVisibleToUser) {
//Load your image
}
else { }
}
}
关于android - ViewPager setCurrentItem(n, false) 多次调用 instantiateItem - Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37590749/