【发布时间】:2018-01-18 18:13:10
【问题描述】:
我正在尝试将我的 ball1 碰撞到 greengreen 可绘制对象。如何确定碰撞?
public boolean CheckCollisionred(View ballr,View rr_1,View rg_3) {
Rect R1 = new Rect(ballr.getLeft(), ballr.getTop(), ballr.getRight(), ballr.getBottom());
Rect R2 = new Rect(rr_1.getLeft(), rr_1.getTop(), rr_1.getRight(), rr_1.getBottom());
Rect R3 = new Rect(rg_3.getLeft(), rg_3.getTop(), rg_3.getRight(), rg_3.getBottom());
return R1.setIntersect(R2, R3);
}
@Override
public void run() {startballanimation();
if (CheckCollisionred()) {
Score++;
}else
Score--;
}
更新:这显示错误“主要活动中的 Checkcollisionred() 不能应用于预期参数,实际参数”
编辑:问题是我有一个显示我想要碰撞的可绘制对象的图像按钮。
【问题讨论】:
-
使用链接问题的答案来查找 Drawable 的位置,然后使用一些
if语句来检测碰撞。 -
您应该了解用于此类游戏的库。 LibGDX 是一个非常受欢迎的。
-
请详细说明您希望您的应用程序做什么以及它当前正在做什么。可绘制对象会移动吗?你想要他们吗?如果有帮助,请随时发布一些屏幕截图。
-
所以屏幕底部有三个图像按钮,并且有球从顶部向下。 drawables没有移动。当为球指定的drawable被点击时,分数会增加......所以基本上drawable会接住球..@Code-Apprentice
-
好的,让我们简化一下。听起来落球与您当前的问题无关。相反,您希望在用户点击或拖动屏幕时移动屏幕上的某些对象。那是对的吗?如果是这样,请创建一个尝试执行此操作的minimal reproducible example。此代码示例不应包含任何球,只有您要移动的对象。
标签: java android android-studio android-drawable imagebutton