Viewpager之启动页
最新推荐文章于 2022-01-28 14:15:29 发布
<android.support.v4.view.ViewPager android:id="@+id/view_pager" android:layout_width="match_parent" android:layout_height="match_parent" /> <LinearLayout android:id="@+id/lin_point" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_marginBottom="15dp" android:gravity="center" android:orientation="horizontal"
private List<View> viewList = new ArrayList<>();//存放图片资源的集合 private int imgArray[];//存放图片资源的数组 //实例化原点View private ImageView ivPoint; private ImageView ivPointArray[];//存放小圆点的数组
/** * 初始化viewpager */ private void initViewPager() { imgArray = new int[]{R.mipmap.flash, R.mipmap.flash_one, R.mipmap.flash_two}; LinearLayout.LayoutParams params = new LinearLayout .LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT); for (int anImgArray : imgArray) { ImageView imageView = new ImageView(this); imageView.setLayoutParams(params); imageView.setBackgroundResource(anImgArray); viewList.add(imageView); } mViewPager.setAdapter(new WelcomePagerAdapter(viewList)); }
/** * 初始化小圆点 */ private void initPoint() { ivPointArray = new ImageView[viewList.size()]; for (int i = 0; i < viewList.size(); i++) { ivPoint = new ImageView(this); ivPoint.setLayoutParams(new ViewGroup.LayoutParams(35, 35)); ivPoint.setPadding(35, 0, 35, 0); ivPointArray[i] = ivPoint; if (i == 0) { ivPoint.setBackgroundResource(R.drawable.point_s); } else { ivPoint.setBackgroundResource(R.drawable.empty_point); } linPoint.addView(ivPointArray[i]); } }
public class WelcomePagerAdapter extends PagerAdapter { List<View> viewList; public WelcomePagerAdapter(List<View> viewList) { this.viewList = viewList; } @Override public int getCount() { return viewList == null ? 0 : viewList.size(); } @Override public boolean isViewFromObject(View view, Object object) { return view == object; } /** * 初始化position的界面 * * @param container * @param position * @return */ @Override public Object instantiateItem(ViewGroup container, int position) { container.addView(viewList.get(position)); return viewList.get(position); } @Override public void destroyItem(ViewGroup container, int position, Object object) { container.removeView(viewList.get(position)); } }