我知道这将是一件非常愚蠢的事情,但我已经尝试了 2 天,所以我承认失败了。
我正在尝试在 NavBar 上实现双击手势识别器。但是,当双击它时,我会遇到以下崩溃....
2014-10-11 13:05:01.317 Gesture[4811:152609] -[UINavigationBar navigationBarDoubleTap:]: unrecognized selector sent to instance 0x78818150
2014-10-11 13:05:01.321 Gesture[4811:152609] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UINavigationBar navigationBarDoubleTap:]: unrecognized selector sent to instance 0x78818150'
它是一个普通的 View Controller ,在 View 中添加了一个导航栏。我在 ViewDidLoad 中用这个实例化手势识别器 ...
.h
IBOutlet UINavigationBar *navBar;
UITapGestureRecognizer *tapRecon;
.m (viewDidLoad)
//Add double tap gesture to Navbar For Auto Refresh
tapRecon = [[UITapGestureRecognizer alloc]
initWithTarget:navBar action:@selector(navigationBarDoubleTap:)];
tapRecon.numberOfTapsRequired = 2;
[navBar addGestureRecognizer:tapRecon];
DoubleTap 方法是
(void)navigationBarDoubleTap :(id) sender {
NSLog(@"Sender: %@", sender);
}
我已将导航栏连接到我的 UINavigationBar,并将其委托(delegate)设置为 View 。我也尝试过使用和不使用 (id)sender 的方法。
非常感谢
等 ionic
最佳答案
tapRecon = [[UITapGestureRecognizer alloc]
initWithTarget:self action:@selector(navigationBarDoubleTap:)];
tapRecon.numberOfTapsRequired = 2;
[navBar addGestureRecognizer:tapRecon];
关于ios - NSInvalidArgumentException - 无法识别的选择器发送到实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26314558/