我想在Android上开发一款简单的记忆游戏。
记忆游戏的正方形如下图所示。我应该如何确定按下哪个方块?我应该使用图像按钮吗?我个人认为用图像按钮制作游戏是个好主意。你能否建议我如何确定哪个方格被按下?
答案 0 :(得分:1)
我认为每个广场的ImageView
是最好的方式,不需要按钮。
注意:View
就足够了,您可以为任何视图实施onClick(View)
。
<强>更新强>
由于你的方块有一个图形(而不是View
s),你可能确实使用坐标来确定触摸了哪个方格,但我不认为这是最简单的方法,也不是最好的方法。
为什么不想要GridLayout
或TableLayout
包含ImageView
?
答案 1 :(得分:1)
如果您有一个绘制正方形的视图,那么在该视图中放置一个onClick()侦听器,并在onClick()内部执行以下操作:(这取自我制作的数独游戏)
@Override
public boolean onTouch(View v, MotionEvent event)
{
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
// keep where the user first touch the screen
touchedX = (int) event.getX() / wid33; // the square width
touchedY = (int) event.getY() / hei33; // the square height
break;
case MotionEvent.ACTION_UP:
// see if the touched square is the same
int X = (int) event.getX() / wid33;
int Y = (int) event.getY() / hei33;
if (X == touchedX && Y == touchedY)
{
// the square is the same, do what you have to do
}
break;
case MotionEvent.ACTION_CANCEL:
touchedX = -1;
touchedY = -1;
break;
default:
return super.onTouchEvent(event);
}
return true;
}
答案 2 :(得分:0)
考虑使用Canvas甚至OpenGL ES来渲染您的游戏。这种方法为您提供了更大的灵活性和更好的性能。
要检查女巫方格是否触摸了手柄触摸事件,您可以使用OnTouchListener。