Ich sehe hier drei Optionen.
Zuerst machen Sie Etikettengröße groß genug, um jeden Text zu halten. Das ist am einfachsten, funktioniert aber nicht immer gut - hängt von den Umgebungsansichten ab.
Zweitens kann Label Größe der Schriftart für längeren Text anpassen (adjustsFontSizeToFitWidth
Eigenschaft). Dies ist oft nicht wünschenswert, verschiedene Schriftarten in Elementen könnten hässlich aussehen.
Die letzte Option besteht darin, die Beschriftung programmgesteuert entsprechend dem aktuell gehaltenen Text zu ändern. Um die Größe zu berechnen erforderlich, um den Text mit aktuellen Schriftart verwenden, so etwas zu halten:
CGSize textSize = [[someLabel text] sizeWithFont:[someLabel font] forWidth:someLabel.bounds.size.width lineBreakMode:UILineBreakModeWordWrap];
sizeToFit-Methode ist eine Methode von UIView. – TopChul
Wie definiert man eine maximale Breite? –
+1 Diese Antwort hat mir am besten geholfen. –