带有超链接文本的UITextView

对于不可编辑的UITextView,我想在iOS9 +中嵌入这样的文本:

只需单击此处进行注册

我可以创建一个函数并处理文本,但是有没有更简单的方法?

我看到我可以使用NSTextCheckingTypeLink,因此在Interface Builder中无需“ click here”部分就可以单击文本:

只需http://example.com进行注册

如果相关,我正在使用Xcode 8和Swift 3。

回答:

设置isEditable = false或文本视图将在用户点击时进入文本编辑模式。

Swift 4及更高版本

let attributedString = NSMutableAttributedString(string: "Just click here to register")

let url = URL(string: "https://www.apple.com")!

// Set the 'click here' substring to be the link

attributedString.setAttributes([.link: url], range: NSMakeRange(5, 10))

self.textView.attributedText = attributedString

self.textView.isUserInteractionEnabled = true

self.textView.isEditable = false

// Set how links should appear: blue and underlined

self.textView.linkTextAttributes = [

.foregroundColor: UIColor.blue,

.underlineStyle: NSUnderlineStyle.single.rawValue

]

以上是 带有超链接文本的UITextView 的全部内容, 来源链接: utcz.com/qa/407588.html

回到顶部