我有两个带有 UITextFields 的控制器。我需要在它们之间使用显示的键盘进行自定义转换,以及转换。
当我使用默认的推送动画时,一切都很好。但是,如果我从 中返回我的转换类animationControllerForOperation
,则键盘在转换之前隐藏并在转换之后显示。
那么,有人可以向我建议一个解决方案或解释,为什么键盘隐藏在自定义转换中?过渡持续时间 = 0.4,我设置[textField becomeFirstResponder]
了viewDidLoad
.
我有两个带有 UITextFields 的控制器。我需要在它们之间使用显示的键盘进行自定义转换,以及转换。
当我使用默认的推送动画时,一切都很好。但是,如果我从 中返回我的转换类animationControllerForOperation
,则键盘在转换之前隐藏并在转换之后显示。
那么,有人可以向我建议一个解决方案或解释,为什么键盘隐藏在自定义转换中?过渡持续时间 = 0.4,我设置[textField becomeFirstResponder]
了viewDidLoad
.
看看 UIViewControllerTransitionCoordinator 类。
这是类似问题的答案:https ://stackoverflow.com/a/21017900
编辑
甚至更简单的方法:
只要下一个 VC 尚未加载,就实现的委托方法并返回- (BOOL) textFieldShouldEndEditing: (UITextField*) textField
NO ...UITextField
只要新视图控制器的视图尚未加载,也许您可以尝试覆盖返回的- (BOOL) canResignFirstResponder
方法。(例如,通过设置一个属性,将其设置为加载新视图控制器的视图时)。喜欢:UITextField
NO
BOOL
YES
- (BOOL) canResignFirstResponder {
return nextVCIsLoaded;
}
也许这可能会阻止键盘被隐藏(这似乎是在“推”操作中的某处自动发生的)。
希望这种方法有所帮助。