[ios] Cambiare il testo di UIButton in modo programmatico



2 Answers

Solo un chiarimento per quelli nuovi alla programmazione Swift e iOS . Sotto la riga di codice:

button.setTitle("myTitle", forState: UIControlState.Normal)

si applica solo a IBOutlets , non a IBActions .

Pertanto, se l'app utilizza un pulsante come funzione per eseguire codice, ad esempio per riprodurre musica e per modificare il titolo da Play a Pause base a una variabile di IBOutlet , è necessario creare anche un IBOutlet per quel pulsante.

Se si tenta di utilizzare button.setTitle contro IBAction si verificherà un errore. È ovvio una volta che lo sai, ma per i noobs (eravamo tutti) questo è un suggerimento utile.

Question

Domanda semplice qui Ho un UIButton, currencySelector e voglio cambiare il testo a livello di programmazione. Ecco cosa ho:

currencySelector.text = "foobar"

Xcode mi dà l'errore "Dichiarazione prevista". Cosa sto facendo male e come posso cambiare il testo del pulsante?




Swift 3.0

// Standard State
myButton.setTitle("Title", for: .normal)



Swift 3

Quando fai la @IBAction:

@IBAction func btnAction(_ sender: UIButton) {
  sender.setTitle("string goes here", for: .normal)
}

Questo imposta il mittente come UIButton (invece di Any) in modo che target btnAction come UIButton




Related