Android ImageView碰撞检测?
当两个图像视图相交时,我试图使某些事情发生。这是我使用的代码:Android ImageView碰撞检测?,android,imageview,collision,Android,Imageview,Collision,当两个图像视图相交时,我试图使某些事情发生。这是我使用的代码: Rect rect1 = new Rect(); imageView.getHitRect(rect1); Rect rect4 = new Rect(); imageView2.getHitRect(rect4); boolean collision = false; collision = rect1.intersect(rect4); if(collision = true){ button.setText("co
Rect rect1 = new Rect();
imageView.getHitRect(rect1);
Rect rect4 = new Rect();
imageView2.getHitRect(rect4);
boolean collision = false;
collision = rect1.intersect(rect4);
if(collision = true){
button.setText("collided");
}else
button.setText("not collided");
但是,当应用程序启动时,布尔值刚刚更改为true。第一个ImageView保持静止,而另一个朝第一个ImageView移动(它不是精灵,但它朝第一个ImageView的方向移动并经过它)。我希望在两个ImageView相交时更改布尔值。有什么我遗漏的吗 试试这个:
Rect rc1 = new Rect();
imageView1.getDrawingRect(rc1);
Rect rc2 = new Rect();
imageView2.getDrawingRect(rc2);
if (Rect.intersects(rc1, rc2) {
// intersection is detected
// here is your method call
}
我在网上搜索了好几天,这对我来说很有用。太棒了 记得每秒钟检查一次碰撞之类的
很遗憾,您的awnser没有作为正确的提交。今天它帮助了我。非常感谢。我必须把这个代码放在计时器滴答声事件之外,让它工作。不知道为什么。有什么想法吗?