Pergunta simples aqui. Eu tenho um UIButton, currencySelector e quero alterar programaticamente o texto. Aqui está o que eu tenho:
currencySelector.text = "foobar"
O Xcode me dá o erro "Declaração esperada". O que estou fazendo de errado e como posso alterar o texto do botão?
UIControlState
. por exemplo,forState: .Normal
.normal
observar o caso mais baixoforState
parafor
button.setTitle("Button Title",for: .normal)
trabalha !, graçasApenas um esclarecimento para os novos no Swift e iOS . Abaixo da linha de código:
aplica-se apenas a
IBOutlets
, nãoIBActions
.Portanto, se seu aplicativo estiver usando um botão como uma função para executar algum código, por exemplo, tocando música e você desejar alterar o título de
Play
para comPause
base em uma variável de alternância, você também precisará criar umIBOutlet
para esse botão.Se você tentar usar
button.setTitle
um contraIBAction
, receberá um erro. É óbvio quando você o conhece, mas para os noobs (todos nós éramos), essa é uma dica útil.fonte
sender
ação será o botão. Você pode aplicar o que quiser aosender
. Você não precisa de uma tomada para fazer isso.Swift 5:
fonte
Swift 3:
Definir o título do botão:
fonte
Swift 5.0
fonte
Alterar o título quando atribuído é um pouco diferente:
Acabei de encontrar um problema: Se você possui um UIButton com um Título atribuído, deve usar:
conforme Apple SetTitle Doc :
Eu tinha um título atribuído e tentei definir o título, sem nenhum efeito ...
fonte
Swift 3
Quando você cria a @IBAction:
Isso define o remetente como UIButton (em vez de Qualquer), para atingir o btnAction como UIButton
fonte
rápido 4.2 e acima
usando o IBOutlet do botão
usando IBAction do botão
fonte
Swift 3
fonte
Para definir um título para um botão no Xcode usando o swift - 04: primeiro crie um método chamado setTitle com o título do parâmetro e o estado UIController como abaixo;
e lembre-se deste método no seu método de ação de botão como;
fonte