我想让 url 链接在 TextView 中可点击,并让该文本像 iPhone 中的 Notes 应用程序一样可编辑。
这是我尝试的:
txtVw.dataDetectorTypes = UIDataDetectorTypes.link
txtVw.isSelectable = true
txtVw.isEditable = false. // this is set to false to make link text tappable
txtVw.linkTextAttributes = [.foregroundColor: UIColor.blue, .underlineStyle: NSUnderlineStyle.single.rawValue]
txtVw.isUserInteractionEnabled = true
txtVw.delegate = self
let descTap = UITapGestureRecognizer(target: self, action: #selector(textViewTapped))
descTap.numberOfTapsRequired = 1
txtVw.addGestureRecognizer(descTap)
@objc func textViewTapped(_: UITapGestureRecognizer) {
txtVw.dataDetectorTypes = []
txtVw.isEditable = true
txtVw.becomeFirstResponder()
}
这里的问题是,如果我将 isEditable 属性设置为 true,则链接未格式化,如果不可编辑,则剩余文本。我想实现与 iPhone 笔记应用程序相同的功能。有没有人遇到过这种情况?任何帮助,将不胜感激。