【问题标题】:Making a UIImageView stop moving when collision is detected检测到碰撞时使 UIImageView 停止移动
【发布时间】:2014-10-13 20:30:48
【问题描述】:

我有一个炮塔和一颗子弹,与弱属性和非自然属性相关联。我也有一条大的水平线沿着视图控制器向下。

有没有什么方法可以让炮塔“发射”子弹,让子弹的 y 位置不断增加?但这里有一个问题,它必须在撞到线后立即停止。

注意:我尝试过[UIView animateWithDuration],但总是在碰撞发生之前检测到碰撞。

【问题讨论】:

  • 使用 UIDynamics。这很简单。您只需定义一个附件、推动和可能的碰撞行为。然后你会得到更真实的感觉;)
  • @deathhorse 在 Apple Developer 网站上,他们对 UIPushBehaviour 类的参考非常含糊。您介意回答解释如何使用 pushDirection 属性和幅度属性的问题吗?

标签: ios objective-c uiimageview collision-detection


【解决方案1】:

在我创建的应用程序中,为了检测碰撞,我使用了这样的方法:

if (CGRectIntersectsRect(bullet.frame, line.frame)) {
    [self GameOver];
}

说如果子弹接触到线的任何部分,它会调用一个方法来结束游戏。

【讨论】:

  • 已经试过了。我认为 [UIView animatewithDuration] 可以做到这一点,因此可以及早检测到碰撞。我想要一种不同的方式来移动图像,当图像发生碰撞时它会停止移动。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-12-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-26
相关资源
最近更新 更多