首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UICollisionBehavior存在的问题

UICollisionBehavior存在的问题
EN

Stack Overflow用户
提问于 2014-02-11 19:50:17
回答 1查看 1K关注 0票数 2

我不确定我是否只是在UICollisionBehavior中发现了一些bug,或者我只是没有正确地实现它。

我有两个主要问题。

1)周期性地,我创建一个只有两个项目的UICollisionBehavior,一个播放器和一个新的项目,要么从顶部掉下来,要么从屏幕底部向上推。

然而,每隔一段时间,两个项目(不是玩家)就会相互碰撞。但是当我在动画师中记录碰撞时,它们都只有两个项目,播放器和下降/上升项目。

根据UICollisionBehavior类引用,冲突:

可以将多个碰撞行为添加到动态动画中。动态项可以是任意数量的碰撞行为的一部分,只要这些行为属于同一个动画器。例如,您可以为一组(例如蓝色)项和另一组(例如,粉色项)指定冲突行为。当您将这两种行为添加到动态动画中时,蓝色项目可以相互碰撞,粉红色项可以相互冲突,但是蓝色项和粉红色项不会发生冲突--它们会忽略对方。

使用上面的例子,我的粉红色项目和蓝色项目碰撞,尽管它们不是在相同的碰撞行为。

2)当屏幕被点击时,我的播放器会使用UIPushBehavior进行推送,但有时不会捕捉到播放机与物品(下降/上升)之间的碰撞。

我不知道上面的问题是否相关,所以我现在把它们放在同一个问题上。

有人知道会是什么吗?有人发现这是个窃听器吗?

像以前一样谢谢你。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-08-07 13:09:19

UICollisionBehaviorUICollisionBehaviorMode

代码语言:javascript
复制
typedef NS_OPTIONS(NSUInteger, UICollisionBehaviorMode) {
    UICollisionBehaviorModeItems        = 1 << 0,
    UICollisionBehaviorModeBoundaries   = 1 << 1,
    UICollisionBehaviorModeEverything   = NSUIntegerMax
} NS_ENUM_AVAILABLE_IOS(7_0);

默认情况下是UICollisionBehaviorModeEverything,因此项目将与边界和其他项发生冲突。您需要将此属性设置为UICollisionBehaviorModeBoundaries

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21711602

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档