我正在开发一个应用程序,我在其中使用
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
}
-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event{
}
-(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event{
}
-(void)handleSingleTap:(UITapGestureRecognizer *)recognizer {
}现在我在touch move之后的iPhone3的问题是调用handleSingleTap函数,而touchesEnded没有被调用。这只发生在屏幕的下部,当我移动到那里时,触摸端没有获得called.If,我移动了很长时间,然后touchesEnded被调用。
但是这个东西在IPhone4和IPad中工作正常。在IPhone4和IPad中,在touchsesMoved之后,它调用touchesEnded。
发布于 2011-11-25 23:40:14
你不是唯一遇到这个问题的人。我在苹果支持论坛列表上找到了类似的帖子:https://discussions.apple.com/thread/1507669?start=0&tstart=0
这个帖子可以追溯到2008年,与iPhone 3重合,所以我猜这可能是运行在iPhone 3上的iOS上的一个未修复的错误。
否则,如果不是这样,可能是因为您使用的是UIScrollView (其控制器实现了上面列出的触摸方法)。默认情况下,它有一个名为的方法:
delaysContentTouches它被设置为YES。也许您应该将其更改为no,并说明它的行为方式。
如果您使用的不是UIScrollView,可能是因为您使用的是两个视图,而包含“死区”的第二个视图没有连接到控制器?
https://stackoverflow.com/questions/8267940
复制相似问题