- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我放了一个 sprite A(被子类化以接收命中(userInteractionEnabled 为 YES)),然后是一个普通的 sprite B,它不接受命中(userInteractionEnabled 默认为 NO),完全覆盖了 sprite A。
点击 sprite B,我假设 sprite A 会得到触摸,但没有任何反应。文档中有关此事的部分如下。
我觉得这里有些不清楚,因为 Sprite B 似乎仍然接收到触摸但将其丢弃。 或者,spriteA 已从可能的触摸接收器中移除,因为它不可见。
For a node to be considered during hit-testing, its userInteractionEnabled property must be set to YES. The default value is NO for any node except a scene node. A node that wants to receive events needs to implement the appropriate responder methods from its parent class (UIResponder on iOS and NSResponder on OS X). This is one of the few places where you must implement platform-specific code in Sprite Kit
要解决这个问题吗?只要某些东西的 userInteractionEnabled 为 NO,它就不应该干扰其他触摸接收器。
更新:即使将 sprite B 的 alpha 设置为 0.2,使 sprite A 非常明显,也不会使 sprite A 可触摸。 Sprite B 只是完全“吞下”触摸,尽管没有启用交互。
最佳答案
这是我的解决方案,直到 Apple 以正确的行为更新 SpriteKit,或者有人准确地弄清楚如何像我们想要的那样使用它。
https://gist.github.com/bobmoff/7110052
将文件添加到您的项目并将其导入您的 Prefix header 中。现在触摸应该按预期方式工作。
关于objective-c - userInteractionEnabled 设置为 YES 的 Sprite 在被普通 Sprite 覆盖时不会接收到触摸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19511334/
我正在尝试创建一个包裹在 UIViewController 中的 float 按钮。一个 float 按钮,如:https://material.google.com/components/butto
我想禁用单元交互。在我的函数中: - (UITableViewCell *) tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSI
这可能是一个菜鸟问题,但我想在非主线程的线程中更改 View 的 userInteractionEnabled 属性,这样做安全吗? 最佳答案 任何与 UIKit 的交互都应该在主线程中完成。这包括与
我尝试将 userinteractionEnabled: 设置为 AVPlayerViewController 的 NO [playerViewController setUserInteractio
Cocos 2d-iphone 3.0.我正在使用此代码来检测是否触摸了单个 Sprite -(void) touchBegan:(UITouch *)touch withEvent:(UIEvent
我有一个在屏幕上显示动画的 subview ,当它出现在屏幕上时,我希望 super View (在我的例子中是背景中的 View )忽略触摸事件。我尝试了一切,但没有用。 有没有办法“强制” sup
我到处都找过了,但没有任何效果。以为我会自己问这个问题。我正在使用 SpriteKit 在 iOS 9 中创建一个小游戏。我的游戏将有左右 Controller 按钮来移动玩家 Sprite 。我按如
嗨,我正在尝试将 Sprite 覆盖设置为水,并将 alpha 设置为 0.3下面的其他 Sprite 都是鱼,但我无法触摸鱼,因为水 Sprite 吞下了触摸 来自这篇文章[ iOS7 Sprite
在显示带有进度指示器的叠加 View 时,我遇到了一个非常奇怪的用户交互问题。 在主视图上,我有上一个和下一个按钮,然后单击下一个按钮,我进行了网络服务调用,在此过程中,我显示了一个带有进度指示器的叠
似乎有一个answer ,但是当我尝试提供的方法时,它就是行不通! @interface MyView : UIView @end @implementation MyView - (UIView *
我的程序基本上是这样的: UIViewController -> 自定义 UIView -> [UIImageView 数组] 我的问题是我的识别器的操作方法从未被调用。我已经将 UIImageVie
我试图使用 textColor 属性简单地更改我的 UILabel 的颜色,当禁用 userInteraction 时它将不起作用,这没有任何意义,那里文档中根本没有提到这一点。但这就是如果我删除该行
我有一个 UITextField,它必须闪烁光标,即使它的 userInteractionEnabled 属性设置为 NO。我不希望 UITextField 成为FirstResponder 并显示键
我使用 TTTAttributedLabel用于自定义我的 UILabel。但有一个问题,当我用手指按住标签时,我不希望有“复制到剪贴板”的功能,并且在官方文档中,似乎没有办法禁用此功能。 有人知道怎
我正在 keyWindow 之上创建一个透明层 UIWindow *window = [[UIApplication sharedApplication] keyWindow]; _topLayer
我试图跳过当用户浏览我的表格 View 时被禁用的文本字段。但是,当它们到达可见单元格的边界时,一切都会变得困惑,因为我试图检测文本字段是否被禁用,如果是,则再次递归调用我的方法以再次导航。 IE。如
我正在为 iOS 开发一个井字游戏,我正在使用 UIButtons 和 UIImageViews 的组合来允许用户交互并显示所做的 Action 。我的问题是按钮在 CPU 移动之前继续接受用户输入,
self.navigationController.navigationBar.userInteractionEnabled = NO; 在 viewDidLoad: 和 viewWillAppear
我正在尝试 iOS 中的纺车概念。我的基础教程是 here UIControl 是这里的核心。 Superview 的 userinteraction 总是被禁用。 那么如何单独为其 subview
我有一个带有按钮的单元格,将 UserInteractionEnabled 设置为 false 也会禁用该按钮。现在,如果我使用 cell.selectionStyle = UITableViewCe
我是一名优秀的程序员,十分优秀!