5

SafariやFinderなどのいくつかのアプリケーションは、Magic Mouseを2本の指で(またはMagic Trackpadを3本の指で)スワイプする と前後に移動します。

これをCocoaアプリケーションにどのように実装しますか?どのクラスが利用できますか?

4

2 に答える 2

5

NSResponderがすでに作業を行っているため、3本の指でスワイプするのが最も簡単です。

- (void)swipeWithEvent:(NSEvent *)event;

2本の指によるスワイプ(技術的にはスワイプとして分類できるとは思わないが、スクロールジェスチャ)をサポートする場合は、タッチを手動で処理する必要があります。http://developer.apple.com/libraryを参照してください。 /mac/#documentation/Cocoa/Conceptual/EventOverview/HandlingTouchEvents/HandlingTouchEvents.html#//apple_ref/doc/uid/10000060i-CH13-SW10

于 2011-07-19T13:43:00.773 に答える
5

私の場合、2本の指でスワイプすると、スワイプする情報(NSScrollViewインスタンスなど)を保持しているNSViewの子孫をサブクラス化してから、-(void)scrollWheel:(NSEvent *)eventを実装することでトラックパッドを操作しました。このメソッドは2本指のスワイプに対して呼び出されます。スワイプの方向は、[eventdeltaX]および[eventdeltaY]プロパティから取得できます。

于 2011-12-28T14:50:03.193 に答える