我试图在 ImageView 上画一条线,但每当我使用 Canvas 尝试它时,我都必须重新加载位图,这不是我的意图。有没有办法使用 Canvas 在上传的 ImageView 上简单地画一条线而无需刷新图像?或者另一种在 Android ImageView 上画线的方法?
问问题
1352 次
2 回答
2
或者,如果您希望能够绘制任何线条(矩形、椭圆等),请将 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 ... />。
于 2013-02-06T01:01:20.000 回答
0
我在 Android 中画线的方式是创建一个高度或宽度为 1dp 的视图。然后将其他值设置为您想要的任何值并设置颜色。
于 2013-02-06T00:52:25.940 回答