一、activity
public class ViewPager2 extends Activity { private ViewPager pager; private List<View> list; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.view_pager_two); initViewPager(); } //初始化ViewPager的方法 public void initViewPager() { ImageView iv1 = new ImageView(this); iv1.setImageResource(R.mipmap.image_1); ImageView iv2 = new ImageView(this); iv2.setImageResource(R.mipmap.image_2); ImageView iv3 = new ImageView(this); iv3.setImageResource(R.mipmap.image_3); list = new ArrayList<View>(); list.add(iv1); list.add(iv2); list.add(iv3); pager = (ViewPager) findViewById(R.id.pager); pager.setAdapter(new ViewPagerAdapter(list)); //監聽ViewPager滑動效果 pager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() { @Override public void onPageSelected(int arg0) { } @Override public void onPageScrolled(int arg0, float arg1, int arg2) { } @Override public void onPageScrollStateChanged(int arg0) { } }); }
二、xml佈局
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <androidx.viewpager.widget.ViewPager android:id="@+id/pager" android:layout_width="match_parent" android:layout_height="wrap_content" /> </RelativeLayout>
三、viewpager工具類
public class ViewPagerAdapter extends PagerAdapter { private List<View> listView; @Override public Object instantiateItem(ViewGroup container, int position) { container.addView(listView.get(position)); return listView.get(position); } @Override public void destroyItem(ViewGroup container, int position, Object object) { container.removeView(listView.get(position)); } public ViewPagerAdapter(List<View> listView){super(); this.listView=listView; } @Override public int getCount() { return listView.size(); } @Override public boolean isViewFromObject(View view, Object object) { return view==object; } }