Android 检测矩形的碰撞并隐藏其中一个

Android 检测矩形的碰撞并隐藏其中一个,android,canvas,touch-event,ondraw,Android,Canvas,Touch Event,Ondraw,我正在尝试开发一个简单的2D游戏。其中有多个计时器的矩形。我想在自定义视图中检测矩形的碰撞。我对两个矩形都使用了多个计时器。我希望其中一个矩形在碰撞后消失一段时间。我在stack overflow和google上搜索了很多,但没有找到关于我的查询的完美答案。 请帮忙。提前感谢。矩形碰撞检测非常简单。基本上,如果X、Y范围有任何重叠,那么它们就会发生碰撞。所以只要做一个矩形相交检查 大多数地方都有Rect和Rectangle类(这是RectF.intersect()) 返回a.left

我正在尝试开发一个简单的2D游戏。其中有多个计时器的矩形。我想在自定义视图中检测矩形的碰撞。我对两个矩形都使用了多个计时器。我希望其中一个矩形在碰撞后消失一段时间。我在stack overflow和google上搜索了很多,但没有找到关于我的查询的完美答案。
请帮忙。提前感谢。

矩形碰撞检测非常简单。基本上,如果X、Y范围有任何重叠,那么它们就会发生碰撞。所以只要做一个矩形相交检查

大多数地方都有Rect和Rectangle类(这是RectF.intersect())

返回a.left

你可能会变得更复杂,尤其是当速度是一个问题时。或者其中一个矩形可能在勾号期间穿过另一个矩形,但在勾号上没有相交。

谢谢@Tatarize的帮助。我会试试看。把矩形隐藏一段时间怎么样。你对这一部分有什么想法吗?只需通过编程实现,我假设它们是给定类的对象,不要绘制它们或对它们进行X记号的碰撞检测。我实际上是在绘制(在自定义视图中使用画布)它们,而不是制作对象。这样做有什么缺点吗?不,不管你用什么方式存储数据。不管怎样,它们都是对象。即使您将它们存储为几个浮点数。只是不要画X记号。这意味着您需要了解矩形的位置、方向、颜色、是否绘制了矩形,然后不绘制设置数量的刻度。因此,你只需减少和比较每一个刻度,然后不要把它画在给定范围以下。即使作为一个独立的类,你最终也会做同样的事情,这只会让代码变得更简单。是的,你可能需要一个集合计数器和关于它们的各个方面,所以一个独立的类是最好的。然后让绘图例程和碰撞例程检查某个设定值是否高于零。然后,每次滴答滴答的时候,就把它减量。当物体发生碰撞时,将其设置为不绘制(或碰撞)的时间长度。让它具有绘图功能并将对象交给画布并不难。
        return a.left < b.right && b.left < a.right
            && a.top < b.bottom && b.top < a.bottom;