Domanda

Supponiamo che il mio UISegmentedControl abbia 8 segmenti numerati. Vorrei che l'utente fosse in grado di attivarne 2, 3 o più contemporaneamente. Impegnandoli. Essenzialmente come un bit in un byte. È possibile? Credo che sia su Mac OS X normale ma non riesco a trovare un modo per farlo nell'SDK di iPhone.

Se devo simulare questo mettendo i pulsanti in una vista, c'è un modo per fare quanto segue:

  1. Arrotonda gli angoli della vista in modo che appaia come la "barra". style UISegmentedControl?
  2. Usa gli sfondi incorporati nella barra " bar " lo stile ha sui pulsanti?
  3. Dai ai pulsanti un'ombra come l'intera " bar " lo stile ha? (non il testo)
È stato utile?

Soluzione

Questo non è possibile utilizzando UIKit. Consiglio di creare un controllo personalizzato o una matrice di controlli UISwitch , che rappresenta ciascuna delle opzioni in UISegmentedControl.

Altri suggerimenti

Questo è il miglior controllo personalizzato che ho trovato che consente di selezionare più segmenti contemporaneamente:

https://github.com/yonat/MultiSelectSegmentedControl

Questa è una sottoclasse di UISegmentedControl, che è conveniente. L'ho biforcato qui:

https://github.com/stewartmacdonald/MultiSelectSegmentedControl

e aggiunto alcuni esempi di codice al file Leggimi e aggiunto un metodo che consente di ottenere un NSArray dei titoli di tutti i segmenti selezionati.

Penso che il modo più semplice sia quello di creare il tuo controllo segmentato con UIButton.

Marco

Sembra esserci un modo per farlo ora in XCode. Nell'Ispettore Attributi, c'è una sezione con Segmento, Titolo, Immagine, Comportamento. Le opzioni di comportamento sono " Abilitato " e " Selezionato " ;. Puoi selezionare " Selezionato " per più segmenti.

Ti consiglio di provare https://github.com/tayhalla/THSegmentedControl
è una sottoclasse effettiva di UISegmentedControl , quindi si adatta perfettamente con il builder Interface e tutto il resto.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top