文本编辑器
我的任务
文本视图
我正在尝试创建一个在IOS上的代码编辑器UITextView,我试图让不同类型的代码显示为不同的颜色,这样就不会只有一种颜色(例如注释将是灰色)。
问题
我遇到的问题是我链接文本视图如下:
@IBOutlet weak var textView: UITextView!
我需要检测textView何时被更改,你知道有什么方法可以做到这一点吗?
我正在尝试创建一个在IOS上的代码编辑器UITextView,我试图让不同类型的代码显示为不同的颜色,这样就不会只有一种颜色(例如注释将是灰色)。
我遇到的问题是我链接文本视图如下:
@IBOutlet weak var textView: UITextView!
我需要检测textView何时被更改,你知道有什么方法可以做到这一点吗?
UITextViewDelegate
协议,然后将textView的委托设置为self。UIViewController
,您需要添加协议一致性。 例如:class MyViewController: UIViewController, UITextViewDelegate {
然后在viewDidLoad()
中设置代理:
override func viewDidLoad() {
super.viewDidLoad()
textView.delegate = self
}
现在,您已经为成功做好了准备。UITextViewDelegate上的所有委托方法都是可选的,因此您只需要实现您想要的方法。在这种情况下,您想要实现的方法是func textViewDidChange(_ textView: UITextView)
每当文本字段中的文本更新时,该方法都会被触发。