Swift 带有addTarget(u3;:操作:)的“无法识别的选择器已发送到实例”
我不知道我做错了什么。。。还因为在我的应用程序的其他部分中,同样的东西也可以工作。。。但现在让我解释一下我的问题。我有一个对象,我在其中配置了一个UIScreenedGepAngestureRecognitor和addTarget_U2;:action:,如下所示:Swift 带有addTarget(u3;:操作:)的“无法识别的选择器已发送到实例”,swift,Swift,我不知道我做错了什么。。。还因为在我的应用程序的其他部分中,同样的东西也可以工作。。。但现在让我解释一下我的问题。我有一个对象,我在其中配置了一个UIScreenedGepAngestureRecognitor和addTarget_U2;:action:,如下所示: swipeFromEdge = UIScreenEdgePanGestureRecognizer() swipeFromEdge.addTarget(self, action: "handlePanFromEdge") swipe
swipeFromEdge = UIScreenEdgePanGestureRecognizer()
swipeFromEdge.addTarget(self, action: "handlePanFromEdge")
swipeFromEdge.minimumNumberOfTouches = 1
swipeFromEdge.maximumNumberOfTouches = 1
swipeFromEdge.edges = .Left
appDelegate.navController.view.addGestureRecognizer(swipeFromEdge)
在此配置之后,在同一个类中添加以下方法:
func handlePanFromEdge() {
...
}
一切似乎都很好,但每次我从屏幕左边缘滑动时,应用程序都会用以下解释阻塞:
-[__NSArrayM handlePanFromEdge]: unrecognized selector sent to instance 0x145967f0
为什么会发生这种情况?我刚刚遇到了同样的问题。尝试将操作放入选择器,并在选择器值后加冒号:
swipeFromEdge.addTarget(self, action: Selector("handlePanFromEdge:"))
看起来这里也有同样的错误:不幸的是没有答案。我会尝试开发论坛。这可能是最新版本中的错误。此代码位于何处?我的代码位于实现UINavigationController委托的自定义对象中。我将此对象用于UINavigationController的自定义转换。我添加了一个手势识别器来创建一个交互式转换。是的,我的应用程序有时会在编译时直接崩溃。。。通常我需要多次重新编译我的应用程序才能正常工作。。。有什么想法吗?老问题,但这可能是因为您的类并没有从NSObject继承。你需要这个来实现目标/行动。。。被这个咬了一口又一口。