在 iPhone OS 上,-touchesEnded:withEvent: 当您离开手指时会快速触发,除非有拖动。如果 -touchesMoved:withEvent: 已触发,则在获得 TouchesEnded:withEvent: 之前大约有 0.6 秒的延迟。
我在一个新项目中验证了这一点,没有scrollView,没有多点触控。
我希望用户拖动一个对象,然后在他抬起手指时立即触发方法。 0.6秒的延迟是不可接受的。
对于处理这个问题有什么想法吗?
编辑:我在测试项目中编写的唯一代码是:
@implementation MyView
// startTime is an ivar
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
startTime = [NSDate timeIntervalSinceReferenceDate];
}
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
NSLog(@"%f", [NSDate timeIntervalSinceReferenceDate] - startTime);
}
发现问题:Magic Trackpad。当您运行模拟器时,Magic Trackpad 会在确定您已结束触摸之前添加延迟。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)