Я только что нашел уникальную ситуацию, когда это происходит.У меня есть мнение, что при увольнении оставляет клавиатуру вверх на экране.Я проверил все, мои делегаты UITextFields были подключены к моему представлению и т. Д. Попытка вручную закрыть клавиатуру в viewWillDisappear () не сработала бы, либо с помощью resignFirstResponder () в полях, либо с помощью endEditing () в представлении.
Затем я понял, что это был мой код проверки поля в самих методах делегатов.Каждый раз, когда редактирование заканчивалось в поле, я проверяю текст в методе делегата textFieldShouldEndEditing, чтобы убедиться, что текст разумный, очень похожий на этот, и не позволяю им выходить из поля до тех пор, пока он не будет проверен.
func textFieldShouldEndEditing(textField: UITextField) -> Bool
{
if self.validateField(textField) {
return true
} else {
return false
}
}
Таким образом, когда пользователь вернулся к предыдущему виду без ввода текста, проверка не пройдена, текстовое поле не может отказаться от статуса первого респондента, и клавиатура остается на экране, когда он возвращается к предыдущему виду.
Это необычная ситуация, но, надеюсь, это поможет кому-то еще, кто столкнется с ней.