Chr*_*rts 10 iphone uigesturerecognizer ios
我有一个应用程序,显示一个文本页面,能够点击一个按钮或在视图中滑动,以推进或撤退各种页面.容器视图附加了两个UISwipeGestureRecognizer,用于向左滑动和向右滑动.这些手势没问题.但现在我正在尝试将UITapGestureRecognizer添加到另一个视图中,提供类似于iBooks或Kindle应用程序的功能,点击左侧返回,右侧继续前进.我所做的一切都无法触发.即使我将手势放在最顶层的视图上并禁用其他手势,也不会暗示它会被触发.
视图控制器实现了UIGestureRecognizerDelegate,但我不需要实现委托方法.我确实尝试过实现shouldReceiveTouch:没有成功.
这是我创建和附加手势识别器的代码片段:
UITapGestureRecognizer *recognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapGestureTurnPage:)];
[self.view addGestureRecognizer:recognizer];
[recognizer release];
Run Code Online (Sandbox Code Playgroud)
Bog*_*dan 25
在您添加手势识别器的视图上尝试此操作:
view.userInteractionEnabled = YES;
Run Code Online (Sandbox Code Playgroud)
你提到你已经尝试过这个,但以防万一再次通过它.
尝试<UIGestureRecognizerDelegate>在标题中使用委托,然后设置委托:
UITapGestureRecognizer *recognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapGestureTurnPage:)];
[self.view addGestureRecognizer:recognizer];
recognizer.delegate = self;
[recognizer release];
Run Code Online (Sandbox Code Playgroud)
然后实现此方法:
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer
shouldReceiveTouch:(UITouch *)touch {
return YES;
}
Run Code Online (Sandbox Code Playgroud)
然后使用调试器或NSLog投入上述方法,并tapGestureTurnPage:查看是否正在调用这些方法.
| 归档时间: |
|
| 查看次数: |
10604 次 |
| 最近记录: |