如何在Custom ImageView背景上绘制多个图层

时间:2013-05-22 23:14:24

标签: android android-imageview android-canvas

我是android的新手,花了一整天的时间试图解决这个问题,包括在这个网站上进行无休止的挖掘,但仍然无法弄明白。所以我通常不会在这里提问,但决定去做吧

我正在使用支持从here

进行缩放缩放的自定义ImageView

基本上我用背景图像(地图)加载视图后,我想要一个红点/十字标记屏幕的中心。然后我希望用户按下一个按钮,并用一些特殊标记(例如小圆圈/矩形)标记当前位置。因此,我想允许用户在指向要标记的imageview中心时按下按钮的所有位置(并保持这样)。以下是look

的示例

我在我的主要活动中使用自定义ImageView(效果很好)

据我所知,我已经覆盖了自定义ImageView的onDraw方法:

@Override
protected void onDraw(Canvas canvas) {

    super.onDraw(canvas);
    paint.setColor(Color.RED);       
    canvas.drawCircle(mWidth/2,  mHeight/2, 2, paint);
}

这确实创造了红色(这是我的油漆风格)圈子。但现在我无法想出绘制其他圈子的方法。我试图遵循一些建议,每次重新创建Bitmap,将图像设置为它,然后绘制任何东西并在画布上设置但是这不起作用,因为中心的坐标已经改变 - 中心是动态的(和也许出于其他原因 - 也许标记的地方应该在不同的层上)

感谢您的帮助!

0 个答案:

没有答案