ViewPager使用方法

来源:互联网 发布:照片幻灯片制作软件 编辑:程序博客网 时间:2024/05/17 07:54

viewpager常用与多页面滑动切换,通常也可与PagerTitleStrip,PagerTabStrip联用,PagerTabStrip继承自PagerTitleStrip。

<span style="white-space:pre"></span>// 给viewPager数据---> adapter ---> listmPager.setAdapter(new GuidePagerAdapter());// 给ViewPager监听mPager.setOnPageChangeListener(this);class GuidePagerAdapter extends PagerAdapter{@Overridepublic int getCount(){if (mImgList != null) { return mImgList.size(); }return 0;}@Overridepublic boolean isViewFromObject(View view, Object object){return view == object;}@Overridepublic Object instantiateItem(ViewGroup container, int position){ImageView iv = mImgList.get(position);// 添加到viewpager中// mPager.addView(iv);container.addView(iv);// 需要返回的是显示的ImageViewreturn iv;}@Overridepublic void destroyItem(ViewGroup container, int position, Object object){// 从viewpager中移除imageView// ImageView iv = mImgList.get(position);// mPager.removeView(iv);container.removeView((View) object);}}// 当viewPager 正在滑动时的回调// @position : 当前所处的页面// @positionOffset : 指的是百分比// @positionOffsetPixels: 实际滑动的距离px@Overridepublic void onPageScrolled(int position, float positionOffset, int positionOffsetPixels){// 1. 去对滑动的点做操作// 2. 设置marginLeftRelativeLayout.LayoutParams params = (android.widget.RelativeLayout.LayoutParams) mSelectedPoint.getLayoutParams();params.leftMargin = (int) (mSpace * position + mSpace * positionOffset + 0.5f);// 四舍五入mSelectedPoint.setLayoutParams(params);}// 当viewPager 某个页面选中时的回调// @position:当前选中的位置@Overridepublic void onPageSelected(int position){// if (position == mImgList.size() - 1)// {// // 显示button// mBtnStart.setVisibility(View.VISIBLE);// }// else// {// // 隐藏button// mBtnStart.setVisibility(View.GONE);// }mBtnStart.setVisibility(position == mImgList.size() - 1 ? View.VISIBLE : View.GONE);}// 当viewpager 的滑动状态改变时的回调// @state:状态值@Overridepublic void onPageScrollStateChanged(int state){// TODO Auto-generated method stub}@Overridepublic void onClick(View v){if (v == mBtnStart){go2Main();}}


0 0
原创粉丝点击