我有2个ImageView
元素。第一个ImageView
正朝着第二个ImageView
发展。我正在尝试使用Android Rect
检测它们何时发生碰撞但由于某些原因,当图像发生碰撞时,Rect.intersects
仍会返回false
。
ImageView tile = (ImageView)findViewById(R.id.tt);
ImageView indicator = (ImageView)findViewById(R.id.ti);
final int[] loc = new int[2];
tile.getLocationInWindow(loc);
final Rect tileRect = new Rect(loc[0], loc[1],
loc[0] + tile.getWidth(), loc[1] + tile.getHeight());
indicator.getLocationInWindow(loc);
final Rect indicatorRect = new Rect(loc[0], loc[1],
loc[0] + indicator.getWidth(), loc[1] + indicator.getHeight());
我后来检查了这样的碰撞:
if(Rect.intersects(tileRect, indicatorRect)){
System.out.println("Intersects");
}
else {
System.out.println("Doesn't intersect");
}
我似乎无法解决问题所以任何帮助都会受到高度赞赏。