我正在尝试在ImageView上绘制一条线,但每当我使用Canvas尝试它时,我必须重新加载Bitmap,这不是我的意图。 有没有办法简单地使用Canvas在上传的ImageView上绘制一条线而无需刷新图像?或者通过Android ImageView绘制线条的另一种方式?
答案 0 :(得分:2)
或者,如果您希望能够绘制任何线条(rects,ovals等),请将ImageView子类化到您自己的ImageView中并自己绘制。
public class MyImageView extends ImageView {
Paint linePaint = new Paint();
@Override
protected void onDraw(Canvas canvas) {
super.onDraw();
// And draw your line.
// (Be sure to have set the values/fields in linePaint earlier so that you draw the correct line/type/size/etc).
canvas.drawLine(0, getHeight()/2, getWidth(), getHeight()/2, linePaint);
}
}
在你的布局xml中,不要指定< ImageView ... />,而是指定< com.mycompany.project.widget.MyImageView ... />代替。
答案 1 :(得分:0)
我在Android中绘制线条的方法是创建一个高度或宽度为1dp的视图。然后将另一个值设置为您想要的任何值并设置颜色。