加载片段时,我可以获取images[]
数组中指定的图像以正确显示,但是一旦更新了images[]
数组,我将无法随后更新ViewPager中的ImageViews。
这样做的最佳方法是什么?
这是我的实例化代码:
@Override
public Object instantiateItem(ViewGroup container, int position) {
layoutInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View view = layoutInflater.inflate(R.layout.view_pager_forsale_photos, null);
ImageView imageView = (ImageView) view.findViewById(R.id.ivViewPagerForsalePhoto);
try {
Glide.with(context)
.load(images[position])
.into(imageView);
ViewPager vp = (ViewPager) container;
vp.addView(view, 0);
} catch (Exception e) {
// Log.e(LOG_TAG,"Glide error " + e);
}
return view;
}
答案 0 :(得分:1)
您的适配器应在PagerAdapter.POSITION_NONE
中返回getItemPosition
。这样,您可以触发notifyDataSetChanged
重新加载更改。
在进行此更改后,是否通过调试器检查instantiateItem
是否已触发。还要验证Glide是否没有从缓存中加载图像。