Kraft UILabel auf display 2 Zeilen
Habe ich UILabel
display-Zeile stehen, wenn es Platz für Sie.
Allerdings brauche ich, um Kraft, die es immer anzeigen 2 Zeilen, selbst wenn dort ist genug Platz für die Anzeige im 1 Zeile.
Solide Möglichkeit ist die Verringerung der richtige Abstand Einschränkung und überprüfen, dass die Bedingung auf allen verfügbaren Geräten, aber vielleicht gibt es einen einfacheren Weg?
Klar zu sein, möchte ich dieses:
so Aussehen:
Als ich erwähnte, jetzt labels gebunden zu superview von Einschränkungen.
- Sie benötigen, um fix eine Konstante Breite in AUTOLAYOUT gewaltsam display mit zwei Zeilen
- wie genau?
- in den autolayout-set fix Breite und NSLineBreakByWordWrapping
- Sie könnte am besten aufteilen der Zeichenkette durch Räume und über zwei labels, wenn Ihre für eine Adresse.
- Nein, es ist nicht der richtige Weg, um davon ausgegangen, es gibt nur zwei Welten , Sie können split
- label.numberoflines =0; label.lineBreakMode = NSLineBreakByWordWrapping ; entfernen Sie die Einschränkungen für die textfield-Instanz und stellen Sie die Rahmengröße ein.Breite = 30. Sie wechseln automatisch zur zweiten Zeile
Du musst angemeldet sein, um einen Kommentar abzugeben.
Schritt 1. Legen Sie die Anzahl der Zeilen, um Ihr Etikett zu 2.
Schritt 2. Set "Vertikale umarmt priority" auf High (1000)
Schritt 3. Klicken Sie rechts auf Ihrem Etikett ein, und verbinden Sie mit dem Symbol auf der linken Seite und wählen Sie "Vertikal Zentrieren".
Schritt 4. Klicken Sie rechts auf Ihrem Etikett ein, und verbinden Sie mit dem Symbol auf der linken Seite und stellen Sie "Abstand".
Schritt 5. Wenn dieser text statisch ist, dann mache es wie vorgeschlagen, Igor, else, ersetzen Sie einfach @" " mit " @"\n" nach dem zuweisen von text an das label. E. g.
Einstellen oder einfach nur
self.myLabel.lineBreakMode = NSLineBreakByWordWrapping;
Im InterfaceBuilder Einstellungen UILabel von text drücken Sie option+enter zwischen "Справочник" und "МКБ".
Oder set
label.text = @"Справочник\nМКБ";
.Und, natürlich, legen Sie
yourLabel.numberOfLines = 2
oder0
im IB oder code.Folgenden code kann hilft Sie und Sie haben, um das label bei der Höhe genug für zwei Linien.
können Sie entweder die Kraft, die das label bis heute einen zweizeiligen text mit einfügen von "\n" in die Position, die Sie wollen in der Zeichenkette.
Oder Sie können eine Konstante Breite auf dem Etikett, um ihn zu zwingen zu bleiben, in der eine Konstante Breite immer (dies führt dazu, das label zu präsentieren, den text in zwei Zeilen, wie lange der text ist größer als die Breite). Denken Sie daran, die erlaubt, die Zeilen Nummer 2.
Müssen Sie die
numberOfLines
.Wenn es einen festen text, dann gehen Sie für
\n
.Wenn es einen dynamischen text, dann gehen Sie für die Einstellung der automatischen layouts mit fester Breite und dann
numberoflines=0
undNSLineBreakByWordWrapping
Für swift 4.2, können Sie versuchen, mit -
wo Titel ist Ihr label.
Dies funktioniert für mich.