ViewPager的更新数据

 今天最近写项目的时候用到了ViewPager,设置了PagerAdapter,可在刷新界面的时候没有效果,即使调用了apdatper的notifyDataSetChanged()

我的pagerAdapter实现是

<span style="font-size:18px;">public class BrowserPageAdapter extends PagerAdapter{


	private final int PAGE_COUNT = 8;
	private Context context;
	
	private ArrayList<View> listViews = new ArrayList<View>();
	
	
	public BrowserPageAdapter(Context context) {
		this.context = context;
		initViews();
	}
	
	public void initViews()
	{
		for (int i = 0; i < PAGE_COUNT; i++) {
		
			View view = View.inflate(context, R.layout.cartoon_pager_sub_view, null);
			listViews.add(view);
		}
	}
	
	@Override
	public int getCount() {
		return listViews.size();
	}


	@Override
	public boolean isViewFromObject(View arg0, Object arg1) {
		return arg0 == arg1;
	}
	
	@Override
	public Object instantiateItem(ViewGroup container, int position) {
		View view = listViews.get(position);
		ListView listView = (ListView) view.findViewById(R.id.list_view);
		BrowserListAdapter listAdapter = new BrowserListAdapter(context);
		listView.setAdapter(listAdapter );
		container.addView(view);
		return view;
	}
	
	
	@Override
	public void destroyItem(ViewGroup container, int position, Object object) {
		System.out.println("________destroyItem_________");
		container.removeView(listViews.get(position));
	}
	
}</span>


后来在网上找了方法,说要想实现刷新需要在自己定义的PagerAdapter中实现

  1.  @Override  
  2.        public int getItemPosition(Object object) {  
  3.         return POSITION_NONE;  
  4.        }  
注意:POSITION_NONE 是一个PagerAdapter的内部常量,值是-2,

API里面有说明:

int android.support.v4.view.PagerAdapter.POSITION_NONE = -2 [0xfffffffe]

然后刷新时调用PagerAdpter的 notifyDataSetChanged()就可以刷新PagerViewd的界面了
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值