我使用UITextView显示HTML内容,除链接外,其工作正常。我可以为普通文本设置字体和颜色,如下所示:
let str = "<font size='4' style='color:red'>text is red</font>"
效果很好。但是当试图为这样的链接上色时,没有任何反应。
let str = "some text <a href='http://stackoverflow.com' style='color:red'>
link is not red!?</a> some text <a href='http://google.com'
style='color:green'> link is not green!?</a>"
这就是我将字符串设置为UITextView的方式。
var attrStr = NSAttributedString(
data: str.dataUsingEncoding(NSUnicodeStringEncoding, allowLossyConversion: true)!,
options: [ NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType],
documentAttributes: nil,
error: nil)
myTextView.attributedText = attrStr
编辑:
可以使用此代码编辑所有链接颜色。根据链接不可能有不同的颜色,这是我正在寻找的。
myTextView.linkTextAttributes = [NSForegroundColorAttributeName: UIColor.greenColor()]
答案 0 :(得分:1)
在iOS 7上,您可以设置UITextView的tintColor。它会影响链接颜色以及光标线和选定的文本颜色。
iOS 7还为UITextView添加了一个名为linkTextAttributes的新属性,它可以让您完全控制链接样式。
参考链接:Can I change the color of auto detected links on UITextView?
iOS开发者库链接:iOS Developer UITextView Class
参考上面的链接,我希望这对你有帮助。