Android ImageView冲突

Android ImageView冲突,android,android-imageview,collision,Android,Android Imageview,Collision,在我的游戏中,我有一个矩形的ImageView,从屏幕顶部向下。底部有另一个ImageView,可随加速计移动 现在我想检查,从顶部落下的ImageView是否与底部的ImageView发生碰撞。我怎样才能做到这一点呢?我不太确定是否可以让该对象发生碰撞,但仍然可以使用getMeasuredWidth()和Height()来确定正方形边界框。然后看看两个正方形的边是否在相反的边界框中 if((square1.x > square2.x && square1.x < s

在我的游戏中,我有一个矩形的
ImageView
,从屏幕顶部向下。底部有另一个
ImageView
,可随加速计移动


现在我想检查,从顶部落下的
ImageView
是否与底部的
ImageView
发生碰撞。我怎样才能做到这一点呢?

我不太确定是否可以让该对象发生碰撞,但仍然可以使用getMeasuredWidth()和Height()来确定正方形边界框。然后看看两个正方形的边是否在相反的边界框中

if((square1.x > square2.x && square1.x < square2.x+square2.width) && (square1.y > square2.y && square1.y < square2.y+square2.height))
//collision happened
if((square1.x>square2.x和square1.xsquare2.y和square1.y
试试这个。此函数用于检测两个图像视图之间的冲突

public boolean collision(ImageView a, ImageView b){
    float bl = a.getY();
    float bt = a.getX();
    float br = a.getWidth() + bl;
    float bb = a.getHeight() + bt;
    float pl = b.getY();
    float pt = b.getX();
    float pr = b.getWidth() + pl;
    float pb = b.getHeight() + pt;
    if (bl <= pr && bl >= pl && bt >= pt && bt <= pb) {
        return true;

    } else if (br >= pl && br <= pr && bb >= pt && bb <= pb) {
        return true;
    } else if (bt <= pb && bt >= pt && br >= pl && br <= pr) {
        return true;
    } else if (bb >= pt && bb <= pb && bl >= pl && bl <= pr) {
        return true;
    }
    return false;
}
公共布尔冲突(ImageView a、ImageView b){
float bl=a.getY();
float bt=a.getX();
浮动br=a.getWidth()+bl;
浮动bb=a.getHeight()+bt;
float pl=b.getY();
float pt=b.getX();
float pr=b.getWidth()+pl;
浮动pb=b.getHeight()+pt;

如果(bl=pl&&bt>=pt&&bt=pl&&br=pt&&bb=pl&&br=pt&&bb=pl&&bl)在曲面视图上绘制位图这样做不是更好吗?那么碰撞检测很容易。我对此一无所知。你能给我发一个带教程的链接吗?这里有一个:尽管只是谷歌“安卓surfaceview教程”,你会发现还有一百万其他的。还有Youtube视频