UISegmentedControl Zachowanie

głosy
4

Szybkie pytanie o klasie UISegmentedControl na iPhone.

Mamy nadzieję, że niektóre z nich mogą nie zauważył, jak w stanie domyślnym z 2 segmentów, kontrola segmentowa nadal będzie przełączać nawet gdy użytkownik kliknie na odcinku, który jest aktualnie wybrany.

Widziałem UISegmentedControls w aplikacjach, które zniweczyć tego zachowania i nie przełączają się, gdy użytkownik naciśnie wybrany segment. Mianowicie, aplikacja Apple iTune Store.

Czy istnieje prosty sposób uniknięcia tego problemu, że jestem z widokiem, lub muszę napisać trochę logiki do valueChanged?

Próbowałem wyłączyć aktualnie wybranych segmentów i umożliwienie te zaznaczone, ale wydaje się to zmienić wygląd kontroli, kiedy nie chcesz to zrobić.

Jakieś pomysły?

Utwórz 11/03/2009 o 10:58
źródło użytkownik
W innych językach...                            


4 odpowiedzi

głosy
8

Spójrz w UISegmentedControl.h pliku nagłówka (łatwym sposobem jest dwukrotne kliknięcie na „UISegmentedControl” w Xcode z poleceń przytrzymaniu).

Tam zobaczysz liczbę elementów w _segmentedControlFlags struktury. Jeśli się kategorię po UISegmentedControl można manipulować którykolwiek z tych elementów - w tym dontAlwaysToggleForTwoSegments który jak łatwo się domyślić po nazwie jest to, czego szukasz.

Ponieważ jest to udokumentowane w nagłówku API (choć nie w konkretnej dokumentacji) powinny być całkiem bezpieczne.

Odpowiedział 12/03/2009 o 00:23
źródło użytkownik

głosy
4

W wersji 3.0, „ _segmentedControlFlags ” został zmieniony na „ chwilową ” własności, które nadal można znaleźć w UISegmentedControl.h pliku nagłówka.

Odpowiedział 20/07/2009 o 21:59
źródło użytkownik

głosy
4

To domyślne zachowanie zostało zmienione w 3.0 API.

Odpowiedział 18/04/2009 o 03:20
źródło użytkownik

głosy
1

Dostęp do _segmentedControlFlags poprzez kategoria jest uważana za korzystanie z prywatnej API, a tym samym naruszenie umowy licencyjnej przez Apple, jak miałem się uczyć dzisiaj. Do tej pory myślałem, kategorie są cechą języka naprawić czyjeś okropnym klasy konstrukcji ...

Odpowiedział 09/12/2009 o 04:14
źródło użytkownik

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more