Pop*_*orn 7 cocoa-touch objective-c multi-touch touch
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
Run Code Online (Sandbox Code Playgroud)
我目前正在获得1个对象
touches
Run Code Online (Sandbox Code Playgroud)
当我用两根手指同时敲击时(按住选项键并点击模拟器).我相信这是因为我没有启用
multipleTouchEnabled
Run Code Online (Sandbox Code Playgroud)
所附视图的属性.我想这样做,以便我不会为多点触摸注册此事件.
看看这个问题,如果我启用了multipleTouchEnabled,那么它似乎会起作用
if ([touches count] > 1) {
return;
}
Run Code Online (Sandbox Code Playgroud)
在我的
touchesBegan:
Run Code Online (Sandbox Code Playgroud)
然而,这对我来说似乎很奇怪,因为我正在启用multipleTouchEnabled以禁用多个触摸,并且担心是否会有副作用.有没有更好的方法来解决我的问题?
您可以使用手势识别器,即使您的代码有效,这也可能比触摸委托更具可读性:
UITapGestureRecognizer *gestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(myAction:)];
gestureRecognizer.numberOfTouchesRequired = 2;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3078 次 |
| 最近记录: |