2009-11-12 17 views
9

Mam kilka UButtonów w mojej aplikacji z różnymi grafikami dla ich stanów Włączenia/Wyłączenia. Mniejsze przyciski wyświetlają się poprawnie bez migotania, ale większy przycisk (320x90px) będzie migotał czarny kolor nad przyciskiem po naciśnięciu do 75% czasu. To dotyczy iPhone'a, a nie symulatora. Ustawiłem różne kombinacje obrazów stanu domyślnego, wyróżnionego, zaznaczonego i wyłączonego UIButton w IB, ale nadal nie mogę pozbyć się tego migotania. Czy jest coś jeszcze, co mogę spróbować?Uibutton miga po naciśnięciu

+0

Czy modyfikujesz przycisk podczas wciśniętego zdarzenia? – Josh

+0

Po naciśnięciu tego przycisku UIBUTON wywołuje funkcję, która wyłącza przycisk podczas przetwarzania w wątku tła. To różni się od innych UIButtonów i prawdopodobnie powoduje problem, ale nie mogę uzyskać żadnej kombinacji obrazów stanu UIButton, aby zapobiec migotaniu. – Ian

+0

Upewnij się, że nie wyłączasz, lub w tym celu, dostępu do wszystkich przycisków lub innych elementów interfejsu z poziomu tła. To może być przyczyną problemu. Zachowaj w tle przetwarzanie tylko wątków, które nie wymagają interfejsu. – luvieere

Odpowiedz

25

Jeśli robisz coś podobnego do button.selected = !button.selected w programie obsługi, wtedy też miałem ten problem. Naprawiłem to nazywając button.highlighted = NO.

+0

To zadziałało dla mnie. Mam przycisk, w którym podświetlone i wybrane stany używają tego samego obrazu (innego niż normalny obraz), a przy zmianie z podświetlonego na wybrany był migotanie. –

+0

David ma rację, nazywając 'button.highlighted = NO' tuż przed wywołaniem' button.selected = NO' (lub 'button.selected =! Button.selected') naprawił także problem dla mnie. –

+0

same ... perfekcyjne :) – VTS12

Powiązane problemy