如何在代码中设置view的圆角,以及边线,背景颜色
1个回答
推荐于2016-06-25 · 知道合伙人数码行家
可以叫我表哥
知道合伙人数码行家
向TA提问 私信TA
知道合伙人数码行家
采纳数:25897
获赞数:1464978
2010年毕业于北京化工大学北方学院计算机科学与技术专业毕业,学士学位,工程电子技术行业4年从业经验。
向TA提问 私信TA
关注
展开全部
要一劳永逸的话,最好自己重写一个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);
}
}
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);
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询