/ / touchesBegan w UIScrollView wywołanym dwukrotnie - ios, cel-c, iphone, uiview, uiscrollview

touchsBegan w UIScrollView wywołany dwa razy - ios, cel-c, iphone, uiview, uiscrollview

mam UIScrollView który został subclassed aby uzyskać wydarzenia dotykowe. Wewnątrz znajduje się UIView UIScrollView i UIView z kolei ma kilka subviews.

Zasadniczo struktura jest UIScrollView > UIView > UIView"s.

The UIView"s otrzymał a tag aby wykryć widok, który został dotknięty.

Ale touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event jest uruchamiany dwa razy, gdy tylko dotknę UIView.

Co mogło pójść nie tak?

Podklasowałem UIScrollView jak wspomniano tutaj: Touches Began.

Odpowiedzi:

0 dla odpowiedzi № 1

Miałem ten sam problem, tylko podczas iPada, i zauważyłem, że dotknięcie było takie samo, np. z po touches w konsoli LLDB otrzymałem dokładnie te same dane, z wyjątkiem "lokalizacji w widoku". Interpretuję to, że inny pogląd przekazał wydarzenie, w tym przypadku główne UIWindow, tak wypróbowany: UIWindow *theMainWindow = [[UIApplication sharedApplication] keyWindow]; theMainWindow.gestureRecognizers = 0;

To działa. Weryfikowałem, że wersja na iPhone'a nadal działa dobrze (z Pan i Zoom).