1. 首先在Xml里创建布局
<LinearLayout
android:id="@+id/ll_dots"android:layout_width="match_parent"
android:gravity="center_horizontal"
android:layout_height="wrap_content"
android:layout_alignBottom="@id/vp" >
</LinearLayout>
2.创建initDots方法
private void initDots() {
dotsList = new ArrayList<ImageView>();
dotsList.clear();
ll_dots.removeAllViews();
for (int i = 0; i < data.size(); i++) {
// 画出圆点
ImageView imageView = new ImageView(Fragment1.this.getActivity());
//
if (i == 0) {
imageView.setImageResource(R.drawable.dots_focus);
} else {
imageView.setImageResource(R.drawable.dots_normal);
}
// 宽和高 dp 相对像素
// 如果是真正开发,需要转成 px值 屏幕适配 dp---px
LayoutParams params = new LayoutParams(20, 20);
// 放到什么位置
params.setMargins(5, 0, 5, 0);
dotsList.add(imageView);
ll_dots.addView(imageView, params);
}
}
3在ViewPager事件里配置切换图片
vp.setOnPageChangeListener(new OnPageChangeListener() {
@Override
public void onPageSelected(int arg0) {
for (int i = 0; i < dotsList.size(); i++) {
if (i == arg0 % data.size()) {
dotsList.get(i).setImageResource(R.drawable.dots_focus);
} else {
dotsList.get(i)
.setImageResource(R.drawable.dots_normal);
}
}
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
// TODO Auto-generated method stub
}
@Override
public void onPageScrollStateChanged(int arg0) {
// TODO Auto-generated method stub
}
});