483 Stimmen

Mehrere Textzeilen in UILabel

Gibt es eine Möglichkeit, mehrere Textzeilen in UILabel wie in der UITextView oder sollte ich stattdessen die zweite verwenden?

8voto

Mubin Shaikh Punkte 376

Versuchen Sie dies zu benutzen:

lblName.numberOfLines = 0;
[lblName sizeToFit];

8voto

Vijay Sharma Punkte 1046

Verwenden Sie story borad : wählen Sie das Etikett, um die Anzahl der Zeilen auf Null zu setzen...... Oder siehe dies

enter image description here

6voto

Rajashekar Punkte 619
UILabel *helpLabel = [[UILabel alloc] init];
NSAttributedString *attrString = [[NSAttributedString alloc] initWithString:label];
helpLabel.attributedText = attrString;
// helpLabel.text = label;

helpLabel.textAlignment = NSTextAlignmentCenter;
helpLabel.lineBreakMode = NSLineBreakByWordWrapping;
helpLabel.numberOfLines = 0;

Aus irgendeinem Grund funktioniert es nicht für mich in iOS 6 nicht sicher, warum. Ich habe es mit und ohne zugeschriebenen Text versucht. Irgendwelche Vorschläge.

6voto

Naresh Punkte 14268

Methode 1:

extension UILabel {//Write this extension after close brackets of your class
    func lblFunction() {
        numberOfLines = 0
        lineBreakMode = .byWordWrapping//If you want word wraping
        //OR
        lineBreakMode = .byCharWrapping//If you want character wraping
    }
}

Rufen Sie nun einfach so auf

myLbl.lblFunction()//Replace your label name 

EX:

Import UIKit

class MyClassName: UIViewController {//For example this is your class. 

    override func viewDidLoad() {
    super.viewDidLoad()

        myLbl.lblFunction()//Replace your label name 

    }

}//After close of your class write this extension.

extension UILabel {//Write this extension after close brackets of your class
    func lblFunction() {
        numberOfLines = 0
        lineBreakMode = .byWordWrapping//If you want word wraping
        //OR
        lineBreakMode = .byCharWrapping//If you want character wraping
    }
}

Methode 2:

Programmatisch

yourLabel.numberOfLines = 0
yourLabel.lineBreakMode = .byWordWrapping//If you want word wraping
//OR
yourLabel.lineBreakMode = .byCharWrapping//If you want character wraping

Methode 3:

Durch Storyboard

Wenn Sie mehrere Zeilen anzeigen möchten, setzen Sie 0(Null), damit Ihr Etikett mehr als eine Zeile enthält.

Wenn Sie n Zeilen anzeigen möchten, stellen Sie n ein.

Siehe Bildschirm unten.

enter image description here

Wenn Sie eine Mindestschriftgröße für das Etikett festlegen möchten, klicken Sie auf Autoschrumpfung und wählen Sie die Option Mindestschriftgröße

Siehe untenstehende Bildschirme

enter image description here

Hier stellen Sie die Mindestschriftgröße ein

EX: 9 (In diesem Bild)

Wenn Ihr Etikett zu diesem Zeitpunkt mehr Text erhält, wird Ihr Etiketttext um bis zu 9 % verkleinert.

enter image description here

3voto

Sumona Salma Punkte 117

Mauersegler 4:

label.lineBreakMode = .byWordWrapping

label.numberOfLines = 0

label.translatesAutoresizingMaskIntoConstraints = false

label.preferredMaxLayoutWidth = superview.bounds.size.width - 10

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X