Comportamentul UISegmentedControl

voturi
4

O întrebare rapidă despre clasa UISegmentedControl pe iPhone.

Din fericire, unii au observat cum în starea sa implicită cu 2 segmente, controlul segmentat în continuare se va activa chiar dacă utilizatorul atinge pe un segment care este în prezent selectat.

Am văzut UISegmentedControls în aplicații care anulează acel comportament și nu comuta atunci când utilizatorul apasă un segment selectat. Și anume, iTune App Store Apple.

Există o modalitate simplă de a preveni acest comportament pe care eu sunt, cu vedere, sau am nevoie pentru a scrie o anumită logică în valueChanged?

Am încercat să dezactivați segmentele selectate în mod curent și care să permită neselectate, dar acest lucru pare să schimbe aspectul controlului, atunci când nu vreau so fac.

Vreo idee?

Întrebat 11/03/2009 la 10:58
sursa de către utilizator
În alte limbi...                            


4 răspunsuri

voturi
8

Uită - te în UISegmentedControl.h fișierul antet (o modalitate ușoară este de a dublu clic pe „UISegmentedControl“ în XCode cu comanda a avut loc în jos).

Acolo veți vedea un număr de elemente dintr - o _segmentedControlFlags struct. Dacă faci o categorie pe UISegmentedControl, puteți manipula oricare dintre aceste elemente - inclusiv dontAlwaysToggleForTwoSegments care , după cum s-ar putea ghici numele este ceea ce căutați.

Din moment ce acest lucru este documentat în antetul API (deși nu în documentația reală) ar trebui să fie destul de sigur de utilizat.

Publicat 12/03/2009 la 00:23
sursa de către utilizator

voturi
4

În 3.0, „ _segmentedControlFlags “ , a fost schimbat la „ moment de proprietate“, care pot fi găsite în UISegmentedControl.h fișierul antet.

Publicat 20/07/2009 la 21:59
sursa de către utilizator

voturi
4

Acest comportament a fost schimbat în 3.0 API.

Publicat 18/04/2009 la 03:20
sursa de către utilizator

voturi
1

Accesarea _segmentedControlFlags printr-o categorie este considerat ca utilizarea unui API privat și, astfel, o încălcare a Acordului de licență de Apple, așa cum a trebuit să învețe astăzi. Până acum, m-am gândit, Categoriile sunt o caracteristică de limbă pentru a fixa pe cineva elses de proiectare clasa oribil ...

Publicat 09/12/2009 la 04:14
sursa de către utilizator

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