【发布时间】:2015-08-29 10:14:25
【问题描述】:
将手势添加到自定义视图 (XIB) 时,我的应用程序崩溃。我使用的是 Xcode 6.4 版。
以下是我使用点击手势添加自定义子视图的步骤:
在我的项目中添加了一个 XIB 和一个 UIView 子类 (MyView)。并将 XIB 类设置为 MyView。
使用 Interface Builder 向 MyView 添加了 TapGesture
创建 MyView 对象 (myView) 并使用
[addSubview:myView]将其添加为子视图。当我运行应用程序时,它崩溃了
删除了 XIB 中的 TapGesture 并再次运行,没有任何问题。
代码:
[[[NSBundle mainBundle] loadNibNamed:@"MyView" owner:self options:nil] firstObject];
日志:
-[UITapGestureRecognizer setFrame:]:无法识别的选择器发送到实例 0x7f924a4ce910
有时候是这样的,
-[UITapGestureRecognizer superview]:无法识别的选择器发送到实例 0x7f924a4ce910
请指教。
【问题讨论】:
-
您的 MyView 实现类的 awakeFromNib 或 drawRect 中是否有一些代码。您似乎正在尝试在 TapGesture 上设置框架。
-
是的 awakeFromNib 在那里。但没有在那里设置任何框架。
-
您可以尝试在 MyView 的 awakeFromNib 中添加您的轻触手势。只是为了检查 xib 中是否有问题。
-
使用代码添加手势时有效。但我想知道我的代码/xib 有什么问题。
-
@pawan:感谢您的建议。我通过添加一些额外的代码行解决了这个问题。我将添加这个问题的答案。
标签: ios objective-c iphone xcode ipad