2010-10-13 9 views
5

Czy istnieje sposób, aby powiedzieć systemowi, aby anulował wszystkie sekwencje zdarzeń dotykowych, które aktualnie mają miejsce w Twojej aplikacji?Pozwól na dotyk w komórce tabeli, aby anulować inne bieżące dotknięcia.

W jednej części mojej aplikacji pokazuję nowy widok, gdy użytkownik wybierze określoną komórkę tabeli. Ale chcę się upewnić, że nie dotykają one jednocześnie żadnych innych przycisków. Na przykład, jeśli trzymają przycisk paska narzędzi podczas wybierania komórki tabeli, chcę anulować ten przycisk na pasku narzędzi.

Wykona ten typ anulowania dotykowego, gdy zostanie wyświetlony, i dokładnie to chcę zrobić.

Próbowałem ustawić exclusiveTouch na UIToolbar, ale to nie pomogło. A przycisk paska narzędzi to UIBarButtonItem, więc nie ma on samej właściwości exclusiveTouch. Czy jest gdzie indziej powinienem ustawić tę właściwość, która może pomóc?

+1

Próbuję zrobić to sam z niestandardowym arkuszem akcji. Niewielki postęp, ale ślad stosu jest następujący: - [UIApplication _cancelTouches: withEvent: sendingTouchesCancelled: includingGestures:]; - [UIApplication _cancelAllTouches]; - [UIActionSheet (prywatne) _presentSheetStartingFromYCoordinate:]; - [UIActionSheet (Private) presentSheetInView:]; – Costique

Odpowiedz

1

Ustaw exclusiveTouch na widokach, które wymagają wyłączności; jest to prawdopodobnie komórka tabeli zamiast przycisków.

Chociaż nie można ustawić exclusiveTouch bezpośrednio na UIBarButtonItem s, można ustawić go na podrzędnych stronach paska narzędzi (ick).

Powiązane problemy