要一劳永逸的话,最好自己重写一个view.给你提供思路,这是我用的的一个带框的imageview。你也可以写其他的。可以通过set方法改变border的颜色宽度。
public class MyImageView extends ImageView {
private int co;
private int borderwidth;
public MyImageView(Context context) {
super(context);
}
public MyImageView(Context context, AttributeSet attrs,
int defStyle) {
super(context, attrs, defStyle);
}
public MyImageView(Context context, AttributeSet attrs) {
super(context, attrs);
}
//设置颜色
public void setColour(int color){
co = color;
}
//设置边框宽度
public void setBorderWidth(int width){
borderwidth = width;
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
// 画边框
Rect rec = canvas.getClipBounds();
rec.bottom--;
rec.right--;
Paint paint = new Paint();
//设置边框颜色
paint.setColor(co);
paint.setStyle(Paint.Style.STROKE);
//设置边框宽度
paint.setStrokeWidth(borderwidth);
canvas.drawRect(rec, paint);
}
}