我的 textView 检测到一个数字“123456789”作为电话号码。自动链接检测会在用户点击时更改其颜色并突出显示。
问题是我想为那个数字禁用那个textView的自动链接检测。
我尝试将 phoneNumber 作为检测器类型删除,但在这种情况下,textView 无法识别 textView 中的任何电话号码。
有人知道我该怎么做才能解决这个问题吗?
答案 0 :(得分:1)
您可以禁用整个文本视图的自动检测并添加指向所需数字的链接。并且您应该完全了解它们以轻松找到它们或至少是它们的“好”模式,以使用正则表达式查找匹配项并设置链接
我猜电话号码使用 URL 方案 tel
,例如 tel:1-408-555-5555
。
let phoneRange = textView.text.range(of: "1-408-555-5555")
let phoneURL = URL(string: "tel:1-408-555-5555")!
let linkString = NSMutableAttributedString(string: textView.text)
linkString.addAttribute(.link, value: phoneURL, range: phoneRange)
textView.attributedText = linkString