第一xml中:
1:dot_focuable
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > <solid android:color="#ff0000" /> <corners android:radius="5dip" /> </shape>
2:dot_normal
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > <solid android:color="#0000cc" /> <corners android:radius="5dip" /> </shape>
第二:代码
ImageView iv; List<ImageView> ivList; LinearLayout ll = (LinearLayout) findViewById(R.id.ll); /** * viewpager的滑动监听事件 */ private void ViewPagerListener() { vp.setOnPageChangeListener(new ViewPager.OnPageChangeListener() { @Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { } @Override public void onPageSelected(int position) { for (int x = 0; x < ivList.size(); x++) { if (position % adlist.size() == x) { //证明点和图片是对应的,应该点是变红的 ivList.get(position % adlist.size()).setImageResource(R.drawable.dot_focuable); } else { ivList.get(x).setImageResource(R.drawable.dot_normal); } } } @Override public void onPageScrollStateChanged(int state) { } }); } /** * 初使化点的 */ private void initDot() { ivList = new ArrayList<>(); if (ivList != null) { ivList.clear(); } for (int x = 0; x < adlist.size(); x++) { iv = new ImageView(MainActivity.this); if (x == 0) { //第一张,让其圆点进行选中状态 iv.setImageResource(R.drawable.dot_focuable); } else { iv.setImageResource(R.drawable.dot_normal); //其它的都不选中 } LinearLayout.LayoutParams parmes = new LinearLayout.LayoutParams(20, 20); //设置两个点之间的距离 parmes.setMargins(10, 0, 10, 0); ll.addView(iv, parmes); ivList.add(iv); } }