我希望在iOS Swift 3中有一个可点击的uitextview超链接。我的代码:
private func setUpTextViews() {
let attributedString = NSMutableAttributedString(string: "http://www.vitensenteret.no")
attributedString.addAttribute(NSLinkAttributeName, value: "http//:www.vitensenteret.no", range: NSRange(location: 0, length: 19))
hyperLink.attributedText = attributedString
hyperLink.dataDetectorTypes = UIDataDetectorTypes.all
phoneNumber.dataDetectorTypes = UIDataDetectorTypes.all
}
func textView(_ textView: UITextView, shouldInteractWith URL: URL, in characterRange: NSRange, interaction: UITextItemInteraction) -> Bool {
UIApplication.shared.open(URL, options: [:])
return false
}
答案 0 :(得分:1)
是因为你的链接字符串中有拼写错误吗?
"http//:www.vitensenteret.no"
请注意:
。
答案 1 :(得分:0)
确保您已在故事板中启用了以下所有项目,以便在UITextView上定义以充当链接:
请确保您为UITextView提供委托以获取以下委托方法的回调:
func textView(_ textView: UITextView, shouldInteractWith URL: URL, in characterRange: NSRange, interaction: UITextItemInteraction) -> Bool
{
return true;
}
同时从上面的网址中删除“:”,即http://www.vitensenteret.no
希望这适用于上述问题。