Como faço para criar um UILabel
programaticamente usando Swift no Xcode 6?
Comecei com um novo "Single View Application" no Xcode 6 e selecionei o Swift para este projeto. Tenho meus arquivos AppDelegate.swift
e ViewController.swift
não tenho certeza do que fazer a partir daqui.
Respostas:
Atualização do Swift 3.0+:
fonte
Aqui está o código correto para Swift 3, com comentários para fins de instrução:
fonte
Apenas para adicionar às já ótimas respostas, você pode querer adicionar vários rótulos em seu projeto, então fazer tudo isso (definir tamanho, estilo, etc.) será uma dor. Para resolver isso, você pode criar uma classe UILabel separada.
Para usá-lo, faça o seguinte
fonte
self.text
dentro de uma classe para iniciar assim:myLabel = MyLabel(string: "text")
myLabel.text = "text"
Swift 4.X e Xcode 10
Se você tiver vários rótulos em sua classe, use a extensão para adicionar propriedades.
fonte
Você pode criar uma etiqueta usando o código abaixo. Atualizada.
fonte
Outro código swift3
fonte
Uma alternativa usando um encerramento para separar o código em algo um pouco mais limpo usando o Swift 4:
Como uma nota, os atributos para
theLabel
ainda podem ser alterados sempre que usar funções no VC. Você está apenas definindo vários padrões dentro do fechamento e minimizando a desordem em funções comoviewDidLoad()
fonte
UILabel(frame:)
) ou em outro lugar no bloco (label.frame=
). Qualquer configuração posterior do quadro (por exemplo, dentroviewDidLayoutSubviews()
) fazia com que o rótulo não aparecesse.Crie uma
UILabel
visão fora daviewDidLoad
classe e, em seguida, adicione essa visão à sua visão principal noviewDidLoad
método.E então adicione isso
view
emviewDidLoad()
fonte
lazy var variable_name = ""
ela não consumirá sua memória a menos que essa variável seja chamada por seu aplicativo. Se essa propriedade não for usada, ela nunca será executada.Crie uma etiqueta em swift 4
fonte
Swift 4.2 e Xcode 10. Em algum lugar no ViewController:
...
Usando:
fonte
Experimente o código acima em ViewDidLoad
fonte
Swift 4.2 e Xcode 10 Inicializam a etiqueta antes de viewDidLoad.
Em viewDidLoad, adicione rótulo à visualização e aplique restrições.
fonte