-1

如何在 Mac OS X 应用程序中触发轻扫或捏合时发生的警报。警报将说明滑动的方向,如果是捏,那么是捏入还是捏出

4

1 回答 1

2

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];
}
于 2013-03-25T01:01:36.360 回答