ios - Make link in UILabel.attributedText *not* blue and *not* underlined -


i want words within ohattributedlabel links, want them colors other blue , don't want underline.

this giving me blue link underlined text:

 -(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;  } 

since i'm using ohattributedlabel, tried using methods in it's nsattributedstring+attributes.h category, return blue underlined links well:

-(void)createlinkfromword:(nsstring*)word withcolor:(uicolor*)color atrange:(nsrange)range{  nsmutableattributedstring* mutableattributedtext = [self.label.attributedtext mutablecopy];  [mutableattributedtext setlink:[nsurl urlwithstring:@"http://www.somewhere.net"] range:range]; [mutableattributedtext settextcolor:color range:range]; [mutableattributedtext settextunderlinestyle:kctunderlinestylenone range:range];  self.label.attributedtext = mutableattributedtext; } 

if comment out line setting links in each version, text gets colored pass in - works. seems setting link overriding , turning blue.

unfortunately apple docs page found shows how set link text blue , underline it, don't need: https://developer.apple.com/library/content/documentation/cocoa/conceptual/attributedstrings/tasks/changingattrstrings.html

so ended using tttattributedlabel:

-(void)createlinkfromword:(nsstring*)word withcolor:(uicolor*)color atrange:(nsrange)range{     nsmutableattributedstring* newtextwithlinks = [self.label.attributedtext mutablecopy];     nsurl *url = [nsurl urlwithstring:@"http://www.reddit.com"];     self.label.linkattributes = @{nsforegroundcolorattributename: color,                                     nsunderlinestyleattributename: @(nsunderlinestylenone)};     [self.label addlinktourl:url withrange:range]; } 

i found ohattributedlabel have methods set links , declare colors , underline styles links. however, wanted links different colors based on parameter. tttattributedlabel allows letting set it's linkattributes property each link create.


Comments

Popular posts from this blog

get url and add instance to a model with prefilled foreign key :django admin -

css - Make div keyboard-scrollable in jQuery Mobile? -

ruby on rails - Seeing duplicate requests handled with Unicorn -