【发布时间】:2013-03-20 05:59:17
【问题描述】:
我正在努力在我的应用中检测字母手势。因此,当用户在屏幕上绘制一个 C 时,会发生一个特殊的动作,依此类推。我正在使用识别器类,该类具有关于每个字母接触点的预定义数据,并且检测正常。我希望在我的所有屏幕中都使用此功能,因此我将以下方法添加到 appDelegate 类并仅检测窗口中的触摸,这里发生的情况是屏幕内的其他视图(如 tableview、scrollview)阻止触摸事件发送到窗口 - 如果这完美地发生了,那么我的代码就会像一个魅力一样工作。任何帮助表示赞赏。
- (void)processGestureData
{
NSString *gestureName = [recognizer findBestMatchCenter:¢er angle:&angle score:&score];
NSLog(@"gesture Name: %@",gestureName);
if ([gestureName isEqualToString:@"N"] || [gestureName isEqualToString:@"n"])
{//handle N gesture
}
if ([gestureName isEqualToString:@"C"])
{//handle C gesture
}
}
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
[recognizer resetTouches];
[recognizer addTouches:touches fromView:self.window];
}
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{
[recognizer addTouches:touches fromView:self.window];
}
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
{
[recognizer addTouches:touches fromView:self.window];
[self processGestureData];
}
【问题讨论】:
-
您能告诉我您是如何检测到用户绘制的是哪个字母吗?任何的想法 ?我不知道如何以及从哪里开始?
-
我使用github.com/preble/GLGestureRecognizer进行手势识别,您必须为您的手势采集样本点并将其添加为具有相应值的JSON文件。
-
感谢分享...
标签: iphone ios ios4 touch gesture