禁用错误的电话号码链接检测UITextView Swift



My textView检测到一个数字"123456789";作为电话号码。当用户点击时,自动链接检测会改变其颜色并突出显示。

问题是,我想禁用的textView的自动链接检测,仅限该数字

我试图删除phoneNumber作为detectorType,但在这种情况下,textView无法识别textView中的任何电话号码。

有人知道我该怎么做吗?

您可以禁用整个文本视图的自动检测,并添加所需数字的链接。您应该确切地了解它们,以便轻松找到它们,或者至少找到它们的"好"模式,使用正则表达式查找匹配项并设置链接

我猜电话号码使用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

最新更新