Wie unterstreiche ich ein UILabel
in Swift? Ich habe die Objective-C durchsucht, konnte sie aber nicht dazu bringen, in Swift zu arbeiten.
ios
swift
overriding
uilabel
nsattributedstring
Esqarrouth
quelle
quelle
NSAttributedString
?Antworten:
Sie können dies mit NSAttributedString tun
Beispiel:
BEARBEITEN
Um die gleichen Attribute für alle Texte eines UILabels zu haben, empfehle ich Ihnen, UILabel und überschreibenden Text wie folgt zu unterordnen:
Swift 4.2
Swift 3.0
Und Sie setzen Ihren Text so:
ALT:
Schnell (2,0 bis 2,3):
Swift 1.2:
quelle
UTF16
beim Erstellen Ihres TextbereichsNSRange
Swift 5 & 4.2 Einzeiler:
Swift 4 Einzeiler:
Swift 3 One Liner:
quelle
Wenn Sie nach einer Möglichkeit suchen, dies ohne Vererbung zu tun:
Swift 5
Swift 3/4
quelle
UTF16
Anzahl anstelle der Anzahl der Zeichen übergeben, wenn Sie IhrenNSRange
Nur eine kleine Korrektur für die Shlome-Antwort in Swift 4 und Xcode 9 .
quelle
UTF16
Anzahl anstelle der Anzahl der Zeichen übergeben, wenn Sie IhrenNSRange
Swift 4:
1- Erstellen Sie eine String-Erweiterung, um den Attributtext zu erhalten.
2- Verwenden Sie es
Erweiterung:
Wie man es auf Button benutzt:
So verwenden Sie es auf Etiketten:
Oder Stoyboard-Version
quelle
Sie können den
UILabel
Text mit dem Interface Builder unterstreichen .Hier ist der Link meiner Antwort: Hinzufügen eines Unterstreichungsattributs zum Teiltext UILabel im Storyboard
quelle
Gleiche Antwort in Swift 4.2
Für UILable
Fordern Sie UILabel wie unten an
Für UIButton
Rufen Sie nach UIButton wie unten
Ich sah in über Antworten und einige von ihnen sind Kraft Abwickeln Text Wert. Ich werde vorschlagen, Wert durch sicheres Auspacken zu erhalten. Dies verhindert einen Absturz bei einem Wert von Null. Hoffe das hilft :)
quelle
UTF16
Zahl anstelle der Zeichenanzahl , wenn die ErstellungNSRange
Swift 4, 4.2 und 5.
Ich muss bestimmten Text in UILabel unterstreichen. Finden Sie also den Bereich und legen Sie die Attribute fest.
Ausgabe
quelle
Schnelle 4 Änderungen. Denken Sie daran, NSUnderlineStyle.styleSingle.rawValue anstelle von NSUnderlineStyle.styleSingle zu verwenden .
`
quelle
Unterstreichen Sie mehrere Zeichenfolgen in einem Satz.
Verwenden Sie auf diese Weise.
quelle
Die obige Antwort verursacht einen Fehler in meiner Build-Umgebung.
Dies funktioniert in Swift 4.0 nicht:
Versuchen Sie stattdessen Folgendes:
hoffe das hilft jemandem.
quelle
// Swift 4 Version
quelle
Sie können dies auch verwenden, wenn Sie nur den halben Teil des Etiketts als Unterstreichung erzielen möchten: - // Für Swift 4.0+
quelle
Für Swift 2.3
und in ViewController
in
ViewDidLoad
Methode oder in Ihrer Funktion schreiben Sie einfachEs wird den Titel Ihrer Schaltfläche unterstreichen
quelle
Eine Klasse zum Setzen und Entfernen von Unterstreichungen für UIbuttons für Swift 5. Ich hoffe, dies hilft
quelle