Problema com rotação e uilabels com tamanho de tamanho usando o tamanho da NSStringwithfont
-
26-09-2019 - |
Pergunta
Eu tenho alguns uilabels na minha opinião com o conjunto de altura deles usando sizeWithFont:
.
Defino a máscara automática para largura e altura flexíveis, no entanto, ao girar as mudanças de largura (estou assumindo porque a largura de Self.View muda e seu conjunto com uma largura em relação à auto -visão), mas a altura não muda para se ajustar ao conteúdo do conteúdo novamente. Isso resulta em um grande espaço branco na parte superior e inferior.
Apenas me perguntando como eu iria redimensionar o Uilabel em rotação? Existe alguma maneira automática de fazer isso, ou existe uma maneira de obter todos os uilabels e refazer sizeWithFont
Quando o dispositivo é girado?
Os Uilabels são subviews das hinderarquias do UIView usadas como cabeçalhos para seções no meu UAableView.
Obrigado Tom
Solução 2
O problema era ter uma margem flexível e direita flexível em um Uilabel ligeiramente deslocado.
Se o rótulo não estiver centrado, você precisará escolher esquerda ou direita e definir a margem flexível para um deles.
Outras dicas
Você realmente deveria enviar sizeToFit
Para qualquer UIView, especialmente Uilabel, em vez de forçar algum tamanho arbitrário neles.
A melhor abordagem é geralmente definir a largura máxima e a altura atual e depois enviar sizeToFit
, depois ajuste a largura novamente, se necessário. No caso de rótulos multilinas, parece a maneira mais infalível de evitar bugs de layout.