iPhone 旋转 XCode Swift 时避免键盘关闭
Avoid keyboard closing when iPhone rotated XCode Swift
我在左侧导航项 UITextField 中。当我在那里输入内容并旋转设备时,键盘每次都会隐藏。
我尝试处理 UIKeyboardWillHideNotification,但我得到的只是:键盘关闭,然后再次显示。这不好,我需要随着视图旋转键盘...
请在Swift2.
中提供帮助
override func willRotateToInterfaceOrientation(toInterfaceOrientation: UIInterfaceOrientation, duration: NSTimeInterval) {
textField.becomeFirstResponder()
}
当设备 将 旋转时会调用上面的方法,因为您不关心方向我们不检查它并简单地指示您正在编辑的文本字段成为第一响应者。
好的,我找到了解决方案!
首先,需要实现委托:
ViewController: UIViewController, UITextFieldDelegate
接下来,添加到viewDidLoad方法:
override func viewDidLoad() {
super.viewDidLoad()
textField.delegate = self
}
到最后,实现textFieldShouldEndEditing功能:
func textFieldShouldEndEditing(textField: UITextField) -> Bool {
//here we can add some if-block for orientation change or smth else
return false
}
我在左侧导航项 UITextField 中。当我在那里输入内容并旋转设备时,键盘每次都会隐藏。
我尝试处理 UIKeyboardWillHideNotification,但我得到的只是:键盘关闭,然后再次显示。这不好,我需要随着视图旋转键盘...
请在Swift2.
中提供帮助override func willRotateToInterfaceOrientation(toInterfaceOrientation: UIInterfaceOrientation, duration: NSTimeInterval) {
textField.becomeFirstResponder()
}
当设备 将 旋转时会调用上面的方法,因为您不关心方向我们不检查它并简单地指示您正在编辑的文本字段成为第一响应者。
好的,我找到了解决方案! 首先,需要实现委托:
ViewController: UIViewController, UITextFieldDelegate
接下来,添加到viewDidLoad方法:
override func viewDidLoad() {
super.viewDidLoad()
textField.delegate = self
}
到最后,实现textFieldShouldEndEditing功能:
func textFieldShouldEndEditing(textField: UITextField) -> Bool {
//here we can add some if-block for orientation change or smth else
return false
}