当前位置:  开发笔记 > IOS > 正文

在文本区域外触摸时如何关闭键盘?

如何解决《在文本区域外触摸时如何关闭键盘?》经验,为你挑选了1个好方法。

我有这个结构:

 ViewController
     |
  MainView  <-- Give a Tap value =1
     |
  ScrollView
     |
    View <-- give a Tag value =2
      |
     another View use to contain textFields  <-- give a tap value =3

视图与Scrollview和MainView具有相同的宽度.

"另一个视图"宽度与视图不同.在"另一种观点"中,我有几个文本域.

问题:触摸视图或文本域外,键盘不会消失.

我已经为键盘实现了这个,但它没有用.

 override func toucheBegan(touches: Set, withEvent event:UiEvent?){

      if (view.tag == 1) {

            //- this refer to main view
            view.endEditing(true)

      } else {

         //- this refer to the other view.
      view.endEditing(true)

      }

--Upate:
override func toucheBegan(touches: Set, withEvent event:UiEvent?){ self.view.endEditing(true) // with or without self }

Patel Jigar.. 6

当用户触摸uiviewcontroller的视图时,尝试下面隐藏键盘的代码,代码在swift 3.0中,希望它能帮到你.

override func touchesBegan(_ touches: Set, with event: UIEvent?) {
    self.view.endEditing(true) //This will hide the keyboard
}

或者你必须为该特定视图设置uitapgesturerecognizer,或者你可以使该视图uicontrol并设置touchupinside事件,你所要做的就是从上面的任何事情中调用self.view.endEditing(true).



1> Patel Jigar..:

当用户触摸uiviewcontroller的视图时,尝试下面隐藏键盘的代码,代码在swift 3.0中,希望它能帮到你.

override func touchesBegan(_ touches: Set, with event: UIEvent?) {
    self.view.endEditing(true) //This will hide the keyboard
}

或者你必须为该特定视图设置uitapgesturerecognizer,或者你可以使该视图uicontrol并设置touchupinside事件,你所要做的就是从上面的任何事情中调用self.view.endEditing(true).

推荐阅读
可爱的天使keven_464
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有