我在我的 iPad 应用程序中使用键盘、Pickerviews 等使用不同输入视图的几个 UITextFields。通常 inputview 应该从屏幕底部出现,但大多数时候它从底部上方出现 - 大约 50 像素。为此,我附上了几张快照。这是非常随机地发生的,但是当发生一次时,它对所有 UITextFields 都是一样的。谁能告诉我影响这个的因素是什么以及如何摆脱这个问题?我希望 inputview 总是从屏幕底部出现。请注意,我没有导航控制器,我在整个应用程序中使用 presentviewmodel,并且自定义的导航控制器看起来像底部!谢谢。
* 我注意到,在选择 From 和 To 文本字段时,即使是谷歌地图也会发生这种情况。这一定是很奇怪的事情!*
我通过以下方法确保选定的 textview 总是 resignfirstresponder 。
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField
{
selectedTextField = textField;
return YES;
}
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
[textField resignFirstResponder];
return YES;
}
- (void)textFieldDidEndEditing:(UITextField *)textField
{
[textField resignFirstResponder];
}
- (void)donePickerViewButtonPressed
{
[selectedTextField resignFirstResponder];
}