android viewpage用法
Android ViewPage是Android开发中常用的一个控件,它可以实现多个页面的滑动切换,非常适合用于实现引导页、轮播图等功能。在本文中,我们将详细介绍Android ViewPage的用法。
英语周报教师网 一、ViewPage的基本用法
1.在布局文件中添加ViewPage控件:
```
儿歌 下载 <android.support.v4.view.ViewPager
android:id="@+id/viewPager"
android:layout_width="match_parent"
android:layout_height="match_parent" />
```
2.在Activity中获取ViewPage控件,并设置Adapter:
```
ViewPager viewPager = findViewById(R.id.viewPager);
viewPager.tAdapter(new MyPagerAdapter());
```
3.自定义PagerAdapter类,实现页面的加载和切换:
```
private class MyPagerAdapter extends PagerAdapter {
private int[] mImageIds = new int[]{R.drawable.image1, R.drawable.image2, R.drawable.image3};
@Override
public int getCount() {
return mImageIds.length;
}
@Override
public boolean isViewFromObject(View view, Object object) {
return view == object;
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
shoppingmall ImageView imageView = new ImageView(MainActivity.this);
imageView.tImageResource(mImageIds[position]);
container.addView(imageView);
return imageView;
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
veView((View) object);
}
}
```
二、ViewPage的高级用法
1.实现无限循环滑动
在PagerAdapter中重写getCount()方法,返回一个较大的值,然后在instantiateItem()方法中对position取模,实现循环滑动:
po是什么意思
```
private class MyPagerAdapter extends PagerAdapter {
private int[] mImageIds = new int[]{R.drawable.image1, R.drawable.image2, R.drawable.image3};
private int mCount = Integer.MAX_VALUE;
饮食文化 英语
@Override
public int getCount() {
return mCount;
}
@Override
public boolean isViewFromObject(View view, Object object) {
return view == object;freeview
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
ImageView imageView = new ImageView(MainActivity.this);
imageView.tImageResource(mImageIds[position % mImageIds.length]);法语论坛
container.addView(imageView);
return imageView;前程似锦英语
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
veView((View) object);
}
山东中医药大学分数线 }
```
2.实现页面切换动画
relax
在ViewPager中设置PageTransformer,实现页面切换动画:
```
viewPager.tPageTransformer(true, new ZoomOutPageTransformer());
```
自定义ZoomOutPageTransformer类,实现页面缩放动画: