首先是布局
<?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" android:orientation="vertical"> <android.support.v4.view.ViewPager android:id="@+id/vp_guide" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_alignParentLeft="true" android:layout_alignParentTop="true"> </android.support.v4.view.ViewPager> </RelativeLayout>
activity代码
public class GuideActivity extends AppCompatActivity { private int[] imageIds = new int[] {R.mipmap.guide_1, R.mipmap.guide_2, R.mipmap.guide_3};//图片数组 private ViewPager vpGuide; private LinearLayout llContainer; private ImageView ivRedDot; private Button btnNext; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_guide); initView(); MyPagerAdapter myPagerAdapter = new MyPagerAdapter(); vpGuide.setAdapter(myPagerAdapter);//别忘了设置适配器 } /** 初始化控件 **/ private void initView() { vpGuide = (ViewPager) findViewById(R.id.vp_guide); } private class MyPagerAdapter extends PagerAdapter{ /** 返回界面viewPager返回个数 **/ @Override public int getCount() { return imageIds.length; } @Override public boolean isViewFromObject(View view, Object object) { return view == object; } /** 给viewPager添加一个界面的方法 **/ @Override public Object instantiateItem(ViewGroup container, int position) { //1.准备添加的图片 ImageView imageView = new ImageView(getApplicationContext()); imageView.setBackgroundResource(imageIds[position]); //2.向viewPager添加图片 container.addView(imageView); //3.如果添加的内容要展示,一定要将添加的对象返回出去 return imageView; } /** 从ViewPager删除一个界面的方法 为了防止oom out of memory**/ @Override public void destroyItem(ViewGroup container, int position, Object object) { container.removeView((View) object); //需要删除的异常 super.destroyItem(container, position, object); } } }