Versuchen, einen ASTextNode (wie UILabel von AsyncDisplayKit) anzuzeigen, um einen HTML-Text anzuzeigen. Ich muss einfach den attributierten Text des Labels setzen.Ändern NSAttributedString HTML-Links Farbe
Es ist, wie ich meinen String arbeiten:
diese Erweiterung ich mit dem HTML-Text in eine NSAttributedString verwandeln:
extension String {
var html2AttributedString: NSAttributedString? {
guard let data = data(using: .utf8) else { return nil }
do {
return try NSAttributedString(data: data, options: [NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType, NSCharacterEncodingDocumentAttribute: String.Encoding.utf8.rawValue], documentAttributes: nil)
} catch let error as NSError {
print(error.localizedDescription)
return nil
}
}
var html2String: String {
return html2AttributedString?.string ?? ""
}
}
Dann habe ich mein Label Details:
self.displayContent = NSMutableAttributedString(attributedString: content.html2AttributedString!)
self.displayContent?.addAttribute(NSFontAttributeName, value: UIFont.fontMainFeedContentFont(), range: NSRange.init(location: 0, length: self.displayContent!.length))
So Ich habe mein Etikett mit meiner Schriftart und es ist in Ordnung, Problem ist, dass ich die Links Farben meines Etiketts nicht ändern kann, es ist ein System blau, das ich will.
Irgendeine Idee, wie ich die Farben der Verbindungen ändern kann?
Danke.
von Linkfarbe, tun Sie meine Unterstreichfarbe? – KrishnaCA
Nein, die Textfarbe ist schwarz, die Links Farben sind blau – user2206906