Existe uma maneira de ter várias linhas de texto UILabel
como no UITextView
ou devo usar o segundo?
ios
uilabel
uitextview
line-breaks
multiline
Ilya Suzdalnitski
fonte
fonte
UILineBreakModeWordWrap
foi preterido no iOS 6. Agora você deve usarNSLineBreakByWordWrapping = 0
Consulte a documentação aquiRespostas:
Eu encontrei uma solução.
Basta adicionar o seguinte código:
Resposta antiga restaurada (para referência e desenvolvedores dispostos a oferecer suporte ao iOS abaixo de 6.0):
No lado: ambos os valores de enumeração cedem de
0
qualquer maneira.fonte
cell.textLabel?.lineBreakMode = NSLineBreakMode.ByWordWrapping
ecell.textLabel?.numberOfLines = 0
No IB, defina o número de linhas como 0 (permite linhas ilimitadas)
Ao digitar no campo de texto usando IB, use "alt-return" para inserir um retorno e vá para a próxima linha (ou você pode copiar o texto já separado por linhas).
fonte
A melhor solução que encontrei (para um problema frustrante que deveria ter sido resolvido na estrutura) é semelhante à de vaychick.
Basta definir o número de linhas como 0 no IB ou no código
Isso exibirá as linhas necessárias, mas reposicionará a etiqueta para que fique centralizada horizontalmente (para que uma etiqueta de 1 e 3 linhas fique alinhada em sua posição horizontal). Para corrigir esse acréscimo:
fonte
Use isso para ter várias linhas de texto em
UILabel
:Rápido:
fonte
fonte
Se você precisar usar o:
Você também pode usar uma quebra de linha padrão
("\n")
no código para forçar uma nova linha.fonte
Você pode usar
\r
para ir para a próxima linha enquanto preenche oUILabel
usoNSString
.fonte
vamos tentar isso
fonte
A solução acima não funciona no meu caso. Eu estou fazendo assim:
fonte
Use story borad: selecione o rótulo para definir o número de linhas como zero ...... Ou Consulte
fonte
Rápido 3
Defina o número de linhas zero para informações dinâmicas de texto, será útil para variar o texto.
fonte
Por algumas razões, não está funcionando para mim no iOS 6, não sei por quê. Tentei com e sem texto atribuído. Alguma sugestão.
fonte
Tente usar isto:
fonte
Essas coisas me ajudaram
Alterar essas propriedades do UILabel
E, ao fornecer String de entrada, use \ n para exibir palavras diferentes em linhas diferentes.
Exemplo:
fonte
Método 1:
Agora ligue simplesmente assim
EX:
Método 2:
Programaticamente
Método 3:
Através do story board
Para exibir várias linhas, defina 0 (Zero), isso exibirá mais de uma linha na sua etiqueta.
Se você deseja exibir n linhas, defina n.
Veja a tela abaixo.
Se você deseja definir o tamanho mínimo da fonte para a etiqueta, clique em Autoshrink e selecione a opção Tamanho mínimo da fonte
Veja as telas abaixo
Defina aqui o tamanho mínimo da fonte
EX: 9 (nesta imagem)
Se o seu rótulo receber mais texto naquele momento, o texto do rótulo diminuirá até 9
fonte
fonte
Você também pode fazer isso através do Storyboard:
fonte
você deve tentar o seguinte:
fonte
fonte
Já respondeu, mas você pode fazê-lo manualmente no storyboard também. Em Inspetor de atributos para o rótulo, você pode alterar quebras de linha para quebra de linha (ou quebra de caractere).
fonte
Nesta função, passe a string que você deseja atribuir no rótulo e passe o tamanho da fonte no lugar de self.activityFont e passe a largura da etiqueta no lugar de 235, agora você obtém a altura da etiqueta de acordo com a sua string. funcionará bem.
fonte
Defina abaixo no código ou no próprio storyboard
Label.lineBreakMode = NSLineBreakByWordWrapping; Label.numberOfLines = 0;
e não se esqueça de definir as restrições esquerda, direita, superior e inferior para o rótulo, caso contrário não funcionará.
fonte
Swift 4:
fonte
Em C #, isso funcionou para mim dentro do UITableViewCell.
Eu acho que o ponto aqui é: -
fonte
Este código está retornando a altura do tamanho de acordo com o texto
fonte