2016-11-18 2 views
0

Я хотел бы по-разному подбирать каждую ссылку в UITextView или UILabel. В настоящее время я использую UITextViews со ссылками, но хочу, чтобы URL-адреса отображались фиолетовыми, а имена пользователей - черными. Я также изучил TTTAttributedLabel, но не могу понять, как это сделать.Различные текстовые атрибуты для каждой ссылки в UITextView/UILabel Swift

textView.linkTextAttributes = [NSForegroundColorAttributeName: UIColor.orange] 
attributedString.setAttributes([NSLinkAttributeName: url, range: range) 
attributedString.addAttributes([NSForegroundColorAttributeName: UIColor.purple], range: range) 

В приведенном выше примере, который я пробовал, ссылка будет оранжевой, а не фиолетовой. Если я не установлю linkTextAttributes, ссылки будут синими. Как переопределить linkTextAttributes с разными атрибутами на ссылку?

+0

Здесь эта ссылка может помочь вам: [http://stackoverflow.com/questions/28361072/change-the-color-of-a-link-in-an-nsmutableattributedstring](http://stackoverflow.com/ вопросы/28361072/change-the-color-of-a-link-in-nsmutableattributedstring) [http://stackoverflow.com/questions/13405513/change-uitextview-hyperlink-color/21027340#21027340](http: //stackoverflow.com/questions/13405513/change-uitextview-hyperlink-color/21027340#21027340) –

+0

Спасибо, но я уже пробовал linkTextAttributes. Мой вопрос касается разных атрибутов на ссылку. На самом деле, мой вопрос был задан в комментарии в вашей первой ссылке, но ответа не было. Http://stackoverflow.com/questions/28361072/change-the-color-of-a-link-in-an-nsmutableattributedstring# комментарий62635278_32222702 @RenatoIoshida – Josh

ответ

0

linkTextAttributes не может определять текстовое поведение для каждого слова. Вы попробовали это? https://github.com/rinov/RegeributedTextView

и

textView.addAttribute("text1", attribute: .linkColor(.orange)) 
textView.addAttribute("text2", attribute: .linkColor(.purple)) 

NSRange вычисляется автоматически.

Смежные вопросы