1,在adapter中加入
@Override
public int getItemPosition(Object object) {
return POSITION_NONE;
}
在更新数据时候,ViewPager无法像ListView一样,notifyDataSetChanged通知View去刷新。加入上述代码,可解决简单子View(TextView,ImageView)。调用notifyDataSetChanged时候ViewPager会调用getItemPosition(Object object)遍历子View,这种情况下,所有child view位置均为POSITION_NONE,表示所有的child view都不存在,ViewPager会调用destroyItem方法销毁,并且重新生成,加大系统开销,并在一些复杂情况下导致逻辑问题。
2.在instantiateItem设置tag值,在需要的时候设置哪个页面刷新。
ImageView viewWithTag = (ImageView) mViewPager.findViewWithTag(2);