我正在我的应用程序上制作一个侧边栏,以便当您向右滑动它打开时,我在我制作的名为侧边栏的对象中使用此代码:
_swipeRecognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self.superview action:@selector(swiped)];
[_swipeRecognizer setDirection: UISwipeGestureRecognizerDirectionRight];
[self.superview addGestureRecognizer:_swipeRecognizer];
这当然会崩溃并引发错误:
[UIView swiped]: unrecognized selector sent to instance 0x1fdbd0c0
因为当我希望它在 self.superview 上寻找方法时,它正在寻找 self.superview 上的“刷卡”方法,但我希望在 self.superview 上检测到手势。
我也很困惑,如果我设置了 initWithTarget 那么为什么我必须做 addGestureRecognizer?这两件事有什么区别?