Как реализовать жест смахивания двумя пальцами в какао, чтобы двигаться вперед и назад? - PullRequest
5 голосов
/ 19 июля 2011

Некоторые приложения, такие как Safari и Finder, перемещаются назад и вперед, когда вы проводите двумя пальцами на Magic Mouse (или тремя пальцами на Magic Trackpad).реализовать это в моем приложении какао?Какие классы доступны?

Ответы [ 2 ]

5 голосов
/ 19 июля 2011

Пролистывание тремя пальцами является самым легким, потому что NSResponder уже делает всю работу за вас:

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

Если вы хотите поддерживать два пальца (которые я не считаю технически классифицированными как движения, а скорее жесты прокрутки), вам придется обрабатывать прикосновения вручную - см. http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/EventOverview/HandlingTouchEvents/HandlingTouchEvents.html#//apple_ref/doc/uid/10000060i-CH13-SW10

4 голосов
/ 28 декабря 2011

Для меня смахивание двумя пальцами работало с трекпадом путем создания подкласса потомка NSView, содержащего информацию, которую нужно провести (например, экземпляр NSScrollView), а затем реализовать событие - (void) scrollWheel: (NSEvent *).Этот метод будет вызываться для двухпальцевых пролистываний, направление пролистывания можно узнать из свойств [event deltaX] и [event deltaY].

...