如何从UITextView的子类中取消选择文本

时间:2019-04-15 02:51:53

标签: swift uikit uitextview

我创建了一个名为CustomTextView的类,它是UITextView的子类。在整个项目中的许多地方都使用该类,例如,CustomTextView在某些表视图单元格和集合视图单元格中以及其他许多地方都使用。我试图通过触摸屏幕上的任何其他位置来取消选择选定的文本,这类似于UILabels和WebKit的默认行为。我已经做了很多研究,但仍然无法从UITextView的子类中找到如何做到这一点。目前,我正在尝试:

override func awakeFromNib() {
    super.awakeFromNib()

    let deselectGesture = UITapGestureRecognizer(target: self, action: #selector(deselectText))
    self.addGestureRecognizer(deselectGesture)

}

@objc func deselectText() {
    self.selectedTextRange = nil
}

唯一的问题是,这只有在用户再次按下文本视图时才起作用。我希望用户能够通过点击屏幕上的其他任何位置来取消选择所选文本。

仅供参考:我在项目中的所有文件均为XIB文件。

0 个答案:

没有答案