布局
<LinearLayout
android:id="@+id/img_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="5dp"
android:layout_marginTop="5dp"
android:gravity="center_horizontal"
android:orientation="horizontal"></LinearLayout>
//用一个Linear Layout来存储圆点
MainActivity代码
private ImageView[] dotViews;//创建图片集合
//生成相应数量的导航小圆点
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
//设置小圆点左右之间的间隔
params.setMargins(10, 0, 10, 0);
//得到页面个数
dotViews = new ImageView[6];//此处传进来的6是页面数,通常要遍历得到页面的数量来创建图片集合
for (int i = 0; i < 6; i++) {//这里也是循环页面数量
ImageView imageView = new ImageView(getContext());
imageView.setLayoutParams(params);
imageView.setImageResource(R.drawable.gry_circle);//设置默认没有选中时所有图片为灰色
if (i == 0) {
//默认启动时,选中第一个小圆点
imageView.setSelected(true);
// dotViews[i].setImageResource(R.mipmap.ic_06);//红色圆点
} else {
imageView.setSelected(false);
// dotViews[i].setImageResource(R.mipmap.ic_07);//灰色圆点
}
//得到每个小圆点的引用,用于滑动页面时,更改它们的状态。
dotViews[i] = imageView;
dotViews[0].setImageResource(R.drawable.red_circle);//设置第一个页面选择为红色
//添加到布局里面显示
img_layout.addView(imageView);
}
页面切换方法时调用
//页面切换
@Override
public void onPageChange(int index) {//此方法不是固定的,一般用于页面切换
for (int i = 0; i < dotViews.length; i++) {
if (index == i) {//等于索引 的时候切换为红色
dotViews[i].setSelected(true);
dotViews[i].setImageResource(R.drawable.red_circle);
} else {
dotViews[i].setSelected(false);
dotViews[i].setImageResource(R.drawable.gry_circle);
}
}
}