在编辑UITextView并触摸表视图控制器中键盘外部的任何地方都无法关闭键盘

问题描述 投票:-1回答:2

我在表视图控制器的一个单元格中有几个textViews,当您触摸键盘外部的任何位置时,我都试图关闭键盘。我试过了touchs begin方法,但是没有用。文本视图不是透明的,并且启用了用户交互。

class RegisterTableViewController: UITableViewController {
    override func viewDidLoad() {
      // set all text views delegate to self
    }

    // dismiss keyboard on touch
    override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
        print("touch")
        super.touchesBegan(touches, with: event)
        view.endEditing(true)
    }
}

extension RegisterTableViewController: UITextViewDelegate {
    func textViewDidBeginEditing(_ textView: UITextView) {
        textView.text = ""
    }
}

我是新手,很高兴能为您提供帮助!

ios swift uitextview
2个回答
1
投票
  • touchesBegan文件中添加UITableViewCell代码,如果您触摸TextField外部但在单元格内部将起作用)>

    override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
          self.Your_TextField.endEditing(true)
    }
    
    [[
  • cell

您需要在单元格中添加点击手势识别器。将您所有的文本输入都放在UIView中。在单元格内制作UIView的出口。然后将此代码添加到您的单元格中。
UIVIew

1
投票
© www.soinside.com 2019 - 2024. All rights reserved.