wag*_*shi 10 tap uitextview uitouch ios
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
NSLog(@"touchesBegan");
//test
UITouch *touch = [event allTouches] anyObject];
if ([touch tapCount] == 2) {
NSLog (@"tapcount 2");
[self.textview becomeFirstResponder];
}
else if ([touch tapCount] == 1) {
NSLog (@"tapcount 1");
[self.textview becomeFirstResponder];
[self.view performSelector:@selector(select:)];
}
}
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event{
[super touchesBegan:touches withEvent:event];
NSLog(@"touchesMoved");
}
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event{
NSLog(@"****touchesEnded");
[self.nextResponder touchesEnded: touches withEvent:event];
NSLog(@"****touchesEnded");
[super touchesEnded:touches withEvent:event];
NSLog(@"****touchesEnded");
}
- (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event{
[super touchesCancelled:touches withEvent:event];
NSLog(@"touchesCancelled");
}
Run Code Online (Sandbox Code Playgroud)
我的问题:
我想在a上点击一次时模拟两次点击UITextView,这是此代码中的textview.但是当我在textview上点击一次或两次时,我不会从一次和两次点击中获得NSLog.我该怎么做才能让它发挥作用?
ben*_*der 18
可能我会在这里使用两个手势识别器.
//...some stuff above here probably in you're controllers viewDidLoad
UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(singleTapRecognized:)];
singleTap.numberOfTapsRequired = 1;
[someTextView addGestureRecognizer:singleTap];
[singleTap release];
UITapGestureRecognizer *doubleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(doubleTapRecognized:)];
doubleTap.numberOfTapsRequired = 2;
[someTextView addGestureRecognizer:doubleTap];
[doubleTap release];
Run Code Online (Sandbox Code Playgroud)
选择器就像:
- (void)singleTapRecognized:(UIGestureRecognizer *)gestureRecognizer {
NSLog(@"single tap");
// ...etc
}
- (void)doubleTapRecognized:(UIGestureRecognizer *)gestureRecognizer {
NSLog(@"double tap");
// ...etc
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12583 次 |
| 最近记录: |