Mache einen Teil eines UILabel fett in Swift

8

Ich habe eine UILabel , die ich programmgesteuert gemacht habe als:

%Vor%

Ich habe dann ein Styling für das Label deklariert, einschließlich einer Schriftart wie:

%Vor%

Der erste Teil des Labels liest immer: "Filter:" , gefolgt von einem anderen Teil des Strings, zum Beispiel "Beliebtestes"

Ich hätte gerne, dass das Wort Filter fett gedruckt ist, also würde die ganze Sache wie folgt aussehen:

Filter: Beliebteste

Ich möchte auf einfachste Weise diesen Effekt erzeugen. Ich habe im Internet nach Möglichkeiten gesucht, dies zu erreichen, und es gibt so viele Möglichkeiten, einige, die nur wie Code-Seiten aussehen. Und das meiste scheint in Objective-C zu sein. Ich würde es gerne in Swift bitte:)

Ich weiß nicht, ob ich auf der richtigen Linie bin, aber kann NSRange dabei helfen? Vielen Dank im Voraus

Aktualisieren

Ich verwende eine Reihe von if -Anweisungen, um meine label Variable zu ändern. Wie:

%Vor%     
Nick89 07.04.2016, 20:39
quelle

4 Antworten

18

Sie werden attributedString verwenden, was Ihnen erlaubt, Teile einer Saite usw. zu stylen. Dies kann so gemacht werden, indem Sie zwei Stile, einen normalen, einen fetten, haben und sie dann zusammenfügen:

%Vor%

Wenn Sie es einem Label zuweisen möchten:

%Vor%     
Joe Benton 07.04.2016, 20:50
quelle
11

Sie können NSMutableAttributedString und NSAttributedString verwenden, um eine benutzerdefinierte Zeichenfolge zu erstellen. Die folgende Funktion macht fettgedrucktenString in der angegebenen Zeichenfolge fett.

Schnell 3

%Vor%

Beispiel Verwendung

%Vor%

Schnell 4

%Vor%     
abdullahselek 19.09.2017 10:12
quelle
1

Schnelle Alternative :

%Vor%     
Maksim Kniazev 20.01.2018 06:21
quelle
1

Ich teile meine eigene ziemlich flexible Implementierung in Swift 4.0. Da es einige Anforderungen gibt, wie z. B. meine, müssen Sie nicht nur den Fettdruck, sondern auch den Teil des Etikettentextes kursiv setzen.

%Vor%     
Glenn 21.03.2018 11:21
quelle

Tags und Links