【问题标题】:How can the keyboard be closed when opening side menu (SWRevealviewController)?打开侧面菜单(SWRevealviewController)时如何关闭键盘?
【发布时间】:2019-01-25 15:53:01
【问题描述】:
在我的例子中,主屏幕中有 SearchView,还有一个侧边菜单(SWRevealViewController)。现在我想这样做,当我点击UISearchView 然后键盘打开时,在不关闭该键盘的情况下我打开侧面菜单(SWRevealViewController)。这就是过程。
现在的问题是打开侧边菜单后键盘仍然打开。
我应该怎么做才能在打开侧边菜单后自动关闭键盘?
现在我尝试这样做:
override func viewDidLoad() {
super.viewDidLoad()
let tap: UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: "dismissKeyboard")
view.addGestureRecognizer(tap)
}
func dismissKeyboard() {
view.endEditing(true)
}
【问题讨论】:
标签:
ios
swift4
swrevealviewcontroller
【解决方案1】:
试试这个代码,希望对你有帮助。
class ViewController: UIViewController, SWRevealViewControllerDelegate {
@IBOutlet weak var textField: UITextField!
@IBOutlet weak var menuButton:UIBarButtonItem!
override func viewDidLoad() {
super.viewDidLoad()
if revealViewController() != nil {
menuButton.target = revealViewController()
menuButton.action = "revealToggle:"
self.navigationController!.view.addGestureRecognizer(self.revealViewController().panGestureRecognizer())
revealViewController().delegate = self
}
}
func revealController(revealController: SWRevealViewController!, willMoveToPosition position: FrontViewPosition) {
textField.resignFirstResponder()
}