我目前正在绘制一个包含六边形的地图,因为它是节点我创建了一个 NodeView 类,以便在调用时将图像绘制在 Canvas 上。(您可以看到这张图片以查看六边形布局)每个节点都有自己的 NodeView(因为每个节点都有其他属性)
我想要做的是,当触摸六边形时(在 ActionUp 上),它会将其图像重绘为不同的六边形图像
到目前为止,这就是我所拥有的
public boolean onTouchEvent(MotionEvent event) {
int eventaction = event.getAction();
switch (eventaction) {
case MotionEvent.ACTION_DOWN:
// finger touches the screen
break;
case MotionEvent.ACTION_MOVE:
// finger moves on the screen
break;
case MotionEvent.ACTION_UP:
// finger leaves the screen
Toast toast = Toast.makeText(getContext(), "Button is pressed", 1);
toast.show();
//should change the image drawn on this view ONLY
break;
}
return true;
}
我应该如何在 ACTION_UP 上使触摸的六边形仅更改其图像?
目前,当使用 NodeView 时,它使用 onDraw() 方法绘制六边形,具体取决于应该绘制的六边形(我有几个用于不同的地形)。