Докоснете Координати от UIPanGestureRecognizer

Възможно ли е да получите абсолютните координати на допир от [UIPanGestureRecognizer translationInView]? Работя върху приложение за iPad и търсих много, за да получа стойностите на координатите на допир от UIPanGestureRecognizer!

Също така се опитах да компенсирам с помощта на стойностите, които получаваме от transaltionInView, но всъщност не мога да разбера математиката зад това...

Някакви предложения момчета?

Рави


person Ravi    schedule 25.08.2011    source източник


Отговори (2)


translationInView е делта промяната на жест. Ако преместите пръста си наляво с 20 pt, ще получите (-20.0, 0.0), това вече е "абсолютно" в този смисъл.

Това, което вероятно имате предвид, е, че искате locationInView, което се отнася до изгледа, подаден чрез аргумента, дори ако споменатият изглед не е този, който разпознава събитията. Обикновено бихте предали изгледа на контролера на изгледа, или изгледа, който ще се погрижи за събитието, или подизгледа, който има повече смисъл за вашето внедряване.

Освен това имайте предвид, че ако имате нужда от реалния абсолют, можете да подадете nil през аргументите и той го връща спрямо прозореца (известен още като "абсолютен")

И ако трябва да правите логика с други изгледи, можете да преобразувате координатите от един изглед в друг с UIView методите на екземпляр: convertRect:fromView:, convertRect:toView:, convertPoint:fromView:, convertPoint:toView:. Тези методи също приемат nil като аргумент за изглед, за да означава "абсолютен" за прозореца.

person Can    schedule 25.08.2011
comment
Страхотно! Напълно пропуснах идеята, че тези жестове са извлечени от UIGestureRecognizer! Още веднъж много благодаря! - person Ravi; 26.08.2011
comment
@Can Според документите translationInView: дава общото движение, а не делта движението. - person Jonathan.; 14.10.2012
comment
@Джонатан. Една година закъснение, но го оправих. - person Can; 15.07.2013

Ето един по-лесен начин:

gesture.locationInView(myView)

Връща точката, изчислена като местоположение в даден изглед на жеста, представен от получаването като CGPoint.

person Esqarrouth    schedule 09.10.2015
comment
Можете ли да разясните малко повече какво прави това и как е различно от това, което OP вече е опитал? Връща ли CGPoint? - person sgress454; 10.10.2015