private int flag_interPadding = 10; // 小圆之间的间距
private int flag_circleDiameter = 10; // 小圆的高度
position = adapter.getBestPosition(position);//gallery选中项
information_gallery.setSelection(position);
int r = 15;
int count = modata.Lenght;//总个数为图片集的个数
flag_interPadding = r;
flag_circleDiameter = r * 2;
int width = flag_circleDiameter * count
+ flag_interPadding * (count - 1);
Bitmap bitmap = Bitmap.createBitmap(width,
flag_circleDiameter, Config.ARGB_4444);//设置圆的大小
reDrawFlag(position % count, count, r, bitmap, img);
public void reDrawFlag(int position, int count, int r, Bitmap flagImage,
ImageView imageView) {
if (flagImage == null)
return;
int eachDistance = flag_circleDiameter + flag_interPadding; // 指定每个圆的间距
Canvas canvas = new Canvas(flagImage);
Paint paint = new Paint();
canvas.drawColor(Color.TRANSPARENT, PorterDuff.Mode.CLEAR);
paint.setAntiAlias(true);
for (int i = 0; i < count; i++) {
paint.setColor(getResources().getColor(R.color.main_divider));
canvas.drawCircle(i * eachDistance + r, r, r, paint);
if (i == position) {
paint.setColor(R.color.main_color);
canvas.drawCircle(i * eachDistance + r, r, r, paint);
}
}
imageView.setImageBitmap(flagImage);
}