Ich möchte, dass einige Wörter in meinem OHAttributedLabel Links sind, aber ich möchte, dass sie andere Farben als blau sind und ich möchte die Unterstreichung nicht.Link in UILabel.attributedText machen * nicht * blau und * nicht * unterstrichen
Dies wird mir eine blaue Verbindung mit unterstrichenen Text geben:
-(void)createLinkFromWord:(NSString*)word withColor:(UIColor*)color atRange:(NSRange)range{
NSMutableAttributedString* mutableAttributedText = [self.label.attributedText mutableCopy];
[mutableAttributedText beginEditing];
[mutableAttributedText addAttribute:kOHLinkAttributeName
value:[NSURL URLWithString:@"http://www.somewhere.net"]
range:range];
[mutableAttributedText addAttribute:(id)kCTForegroundColorAttributeName
value:color
range:range];
[mutableAttributedText addAttribute:(id)kCTUnderlineStyleAttributeName
value:[NSNumber numberWithInt:kCTUnderlineStyleNone]
range:range];
[mutableAttributedText endEditing];
self.label.attributedText = mutableAttributedText;
}
Da ich verwende OHAttributedLabel, ich habe auch versucht, die Methoden in es NSAttributedString+Attributes.h
Kategorie ist, aber die Rückkehr blauen Links unterstrichen auch:
Wenn ich die Zeile, die die Links in jeder Version setzt, auskommentiere, wird der Text farbig zu dem, was ich passiere - das funktioniert. Es scheint nur so zu sein, als setze ich den Link so, dass er dies überschreibt und es wieder blau macht.
gefunden Leider zeigt ich den Apfel docs Seite, wie Sie den Link-Text zu blau setzen und sie unterstreichen, genau das, was ich nicht brauche: https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/AttributedStrings/Tasks/ChangingAttrStrings.html
Achten Sie außerdem darauf einstellen 'linkAttributes' vor dem Hinzufügen eines Links zum Etikett. – damirstuhec
Gibt es keine andere Möglichkeit, die Linkfarbe einzustellen, außer bei einigen Github-Projekten? Die Eigenschaft linkAttributes ist für ein UILabel nicht verfügbar. – TheJeff