文本视图为空时禁用按钮,否则启用

O u*_*ser 0 swift ios9

我正在开发笔记应用程序,当文本视图为空时,应禁用完成按钮,以便用户无法将空笔记保存到数据库中,否则应启用该按钮。

下面是我的代码,我的尝试失败了;我该如何解决这个问题?

 @IBOutlet weak var textView: UITextView!
 @IBOutlet weak var done: UIBarButtonItem!

 override func viewDidLoad() {
        super.viewDidLoad()

        title = note?.text
        if (self.textView.text.isEmpty){
            done.enabled = false
        }
        if let noteContent = note

        {
            textView.text = noteContent.text
        }

         self.navigationController!.toolbarHidden = false;
    }

  func textViewShouldBeginEditing(textView: UITextView) -> Bool{
done.enabled = true

    return done.enabled
}
Run Code Online (Sandbox Code Playgroud)

Cod*_*ent 5

  1. 使您的视图控制器符合UITextViewDelegate协议
  2. 在 Interface Builder 中,将delegate文本视图上的连接到您的视图控制器。
  3. 将以下函数添加到您的视图控制器:

func textViewDidChange(textView: UITextView) {
    if textView == self.textView {
        self.doneButton.enabled = !textView.text.isEmpty
    }
}
Run Code Online (Sandbox Code Playgroud)