Impostazione manuale di uno stato UIButton
-
03-07-2019 - |
Domanda
I UIButton
utilizzando + buttonWithType:
Quello che devo capire è come cambiare manualmente lo stato del pulsante. Ci sono momenti in cui ho bisogno che sia impostato su " disabilitato. & Quot;
Ho letto la documentazione UIButton
ma non riesco a trovare nulla sull'impostazione manuale di uno stato del pulsante.
Qualsiasi pensiero sarebbe molto apprezzato.
Soluzione
Hai provato button.enabled = NO;
?
Altri suggerimenti
ci sono anche gli stati:
button.highlighted = NO;
button.selected = NO;
Non è solo la proprietà state
? È nella classe UIControl
che è la superclasse di UIButton
.
Modifica: oops, no non lo è. I documenti dicono " Questo attributo è di sola lettura & # 8212; non esiste un metodo setter corrispondente. & Quot;
Puoi impostare manualmente lo stato di UIButton.
UIButton *btnCheck=[UIButton buttonWithType:UIButtonTypeCustom];
if(btncheck isselected])
{
btncheck.selected=FALSE;
}
else
{
btncheck.selected=TRUE;
}
Puoi eseguire operazioni su UIButton secondo i tuoi requisiti come eseguire alcune azioni quando UIButton è selezionato e mentre non è selezionato.
Spero che questo ti possa aiutare ....
per Swift 3 puoi usare
button.isSelected = true
Obiettivo C:
button.selected = Yes;
button.highlighted = NO;
button.enabled = Yes;
Swift 4:
button.isSelected = true
button.isEnabled = true
Inoltre puoi usare: (swift 4)
button.state == .selected
Per chiunque arrivi qui cercando di cambiare lo "stato" del pulsante (anziché "abilitato"). Stephen ha ragione " Questo attributo è di sola lettura & # 8212; non esiste un metodo setter corrispondente. & Quot;
Quello che vuoi veramente impostare è lo stato della cella dei pulsanti.
[[myNSButtonOutlet cell] setState: NSOnState]; //Options NSOnState, NSOffState, NSMixedState