如何在发生滑动或捏合时发生的Mac OS X应用程序中触发警报。 警报将说明滑动的方向,如果是捏,那么是否是捏或捏?
答案 0 :(得分:2)
关于handling trackpad events的Apple文档内容非常丰富。您需要查看swipeWithEvent:(NSEvent *)event
方法和magnifyWithEvent:(NSEvent *)event
方法。他们给出了您可以使用这些方法以及如何实施的明确示例
他们。我很快就做到了,所以这段代码还没有经过测试。但你需要做这样的事情。我建议你阅读整篇文章,然后创建自己的代码。
- (void)swipeWithEvent:(NSEvent *)event {
CGFloat x = [event deltaX];
CGFloat y = [event deltaY];
NSString *msg = @"";
if (x != 0) {
msg = (x > 0) ? @"Left Swipe" : @"Right Swipe";
}
if (y != 0) {
msg = (y > 0) ? @"Up Swipe" : @"Down Swipe";
}
[self displayWithMessage:msg];
}
- (void)magnifyWithEvent:(NSEvent *)event {
NSString *msg = @"";
if([event magnification] > 0) {
msg = @"Pinch In";
}
else if ([event magnification] < 0) {
msg = @"Pinch Out";
}
[self displayWithMessage:msg];
}
-(void) displayWithMessage:(NSString *)message {
NSAlert *alert = [[NSAlert alloc] init];
[alert setAlertStyle:NSInformationalAlertStyle];
[alert setMessageText:@"Gesture Notification"];
[alert setInformativeText:message];
[alert runModal];
}