我的xml文件中有一个imageview,我想在用户点击的位置放置另一个图像。 我已经使用画布将图像放置在用户点击的位置,但是当我将画布放在我的imageview上时我会陷入困境。 或者,当我们想要在检测到用户点击时将另一个图像放在imageview上时,还有什么方法吗? 感谢
答案 0 :(得分:2)
由于您已经覆盖View
方法,我会说绘制图像而不是ImageView
。您的onDraw()
方法基本上是:
@Override
public void onDraw(Canvas canvas) {
canvas.drawBitmap(bottomBitmap, xCorner, yCorner, paintObject);
canvas.drawBitmap(topImage, fingerXCorner, fingerYCorner, paintObject);
}
编辑:
或者,如果您希望保留ImageView
,因为方便的scaletypes,那么您可以覆盖FrameLayout
。将ImageView
放在其中,然后覆盖draw()
方法以绘制位图。
@Override
public void draw(Canvas canvas) {
super.draw(canvas); // draws everything in the FrameLayout
canvas.drawBitmap(topImage, fingerXCorner, fingerYCorner, paintObject);
}
答案 1 :(得分:0)
您是否尝试使用ImageButton
?
<ImageButton
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:onClick="onButtonClick"
android:src="@drawable/yourImageFile" />
然后在onButtonClick
,
Activity
方法
public void onButtonClick(View v) {
/* Do something */
}