ViewPager的使用

来源:互联网 发布:2017年网络销售好做吗 编辑:程序博客网 时间:2024/06/02 03:24

重要知识点:

关于ViewPager

1、能实现多个View左右切换的效果。

2、是由google的support-v4兼容包提供的,所以需要导入该包。

3、和ListView类似,也有一个Adapter,叫PagerAdapter


关于PagerAdapter

能为ViewPager提供view。必须重写以下方法:
1、boolean isViewFromObject(View arg0, Object arg1)
2、int getCount() 
3、void destroyItem(ViewGroup container, int position,Object object)
4、Object instantiateItem(ViewGroup container, int position)


getCount():返回要滑动的View的个数:
@Override
public int getCount() {
return viewList.size();
}

destroyItem():从当前container中删除指定位置的View

@Override
public void destroyItem(ViewGroup container, int position,
Object object) {
container.removeView(viewList.get(position));
}

instantiateItem():第一:将当前视图添加到container中,第二:返回当前View

@Override
public Object instantiateItem(ViewGroup container, int position) {
container.addView(viewList.get(position));
return viewList.get(position);
}
};

isViewFromObject():ViewPager里面用了一个mItems(ArrayList)来存储每个page的信息(ItemInfo),当界面要展示或者发生变化时,需要依据page的当前信息来调整,但此时只能通过view来查找,所以只能遍历mItems通过比较view和object来找到对应的ItemInfo。

@Override
public boolean isViewFromObject(View arg0, Object arg1) {
return arg0 == arg1;
}

为引导动画加上圆点指示器

思路:

1、有几个view,就有几个圆点图片
2、为圆点图片设置selector,启用时是灰色图,不启用时是白色图。
3、在程序动态设置圆点的状态setEnabled(true|false);

1 0
原创粉丝点击