1

我有一个应用程序需要在一些控件之间有某些定义的区域,我可以在其中绘制原始形状(主要是矩形)。

是否有一个简单的控件只定义了我可以在页面上的其他控件之间绘制的区域?

我原本以为我可以只在 ImageView 上绘图,但是当我这样做时,图像视图会移动到布局中完全不同的位置,并且大小似乎都搞砸了。

谢谢。

4

1 回答 1

1

您应该使用扩展 View 的内部类,并将绘图内容放在 onDraw() 方法中:

public void onDraw(Canvas canvas) {
     super.onDraw(canvas);   
}

从那里你可以把这个视图放在一个LinearLayout或RelativeLayout中。

如果您的绘图视图与控件混合的方式很复杂,那么您也可以在 onDraw 中添加您的控件,并监听 onTouch 事件以确定它们何时被按下。

于 2013-01-28T23:49:30.890 回答