好吧,假设我一次有40个imageViews在屏幕上,我想检查是否有任何触摸,是否有任何方法来浓缩我的代码,并写一个循环为我做?现在我的代码看起来像只有更长的下面,因为我有一个巨大的条件每个图像。它使得无尽的和总体看起来的代码。每个条件唯一不同的是索引值。在一个while循环内的Android Touch有条件吗?
public boolean onTouch(View v, MotionEvent event)
{
switch (event.getAction())
{
case MotionEvent.ACTION_MOVE:
float x = event.getRawX();
float y = event.getRawY();
if (x > imageViewArray[0].getX() && x < imageViewArray[0].getX() + imageViewArray[0].getWidth() && y > imageViewArray[0].getY() && y < imageViewArray[0].getY() + imageViewArray[0].getHeight()) {
System.out.println("imageView0 was touched");
}
if (x > imageViewArray[1].getX() && x < imageViewArray[1].getX() + imageViewArray[1].getWidth() && y > imageViewArray[1].getY() && y < imageViewArray[1].getY() + imageViewArray[1].getHeight()) {
System.out.println("imageView1 was touched");
}
if (x > imageViewArray[2].getX() && x < imageViewArray[2].getX() + imageViewArray[2].getWidth() && y > imageViewArray[2].getY() && y < imageViewArray[2].getY() + imageViewArray[2].getHeight()) {
System.out.println("imageView2 was touched");
}
break;
}
return true;
}
为什么'{'在您的病例陈述后? – csmckelvey
我减少了我的代码,让我的观点一览无遗,留下了呐喊。 – user1277224