【发布时间】:2018-11-14 08:37:25
【问题描述】:
我有UITextView 并想在其中添加部分文本的链接。这些嵌入的链接应加下划线。当我将其font 设置为内置链接之一时,它可以正常工作,但使用Ubuntu font 它即使设置了超链接颜色也不起作用。
let linkTextView = UITextView()
let linkAttributes: [NSAttributedString.Key: Any] = [NSAttributedString.Key.foregroundColor: Design.colorPrimary,
NSAttributedString.Key.underlineStyle: NSUnderlineStyle.single.rawValue,]
linkTextView.linkTextAttributes = linkAttributes
linkTextView.isUserInteractionEnabled = false
let allText = "example link"
let linkText = "link"
let NStext = NSString(string: allText)
let attributedString = NSMutableAttributedString(string: allText)
attributedString.addAttribute(.link, value: NSURL(string: "https://www.apple.com")!, range: NStext.range(of: linkText))
linkTextView.attributedText = attributedString
linkTextView.heightAnchor.constraint(equalToConstant: 100).isActive = true
linkTextView.font = UIFont(name: "Ubuntu", size: 20)!//this does not
//linkTextView.font = UIFont(name: "ArialMT", size: 20)! // this works
ArialMT:
Ubuntu:
那我该如何解决呢?
【问题讨论】:
-
可能是related。
标签: ios swift uitextview nsattributedstring