Я пишу универсальное приложение для iOS, которое представляет собой компонент для ввода текста.Когда отображается представление с UITextView в нем, я вызываю [UITextView intoFirstResponder], чтобы всплыла клавиатура.Когда пользователь нажимает «Готово / Сохранить», контроллер представления вызывает всплывающее окно на своем навигационном контроллере, и клавиатура должна автоматически исчезнуть.
Это прекрасно работает на iPhone / iPod touch, но наIPad, клавиатура остается вверх, с аксессуаром, даже после того, как вид выскочил.Я перепробовал все: проверку утечек с помощью инструментов, статический анализатор, явный вызов [UITextView resignFirstResponder] несколько раз, кучу снимков, и неважно, что я не могу заставить клавиатуру исчезнуть после нажатия контроллера представления или выяснить, почемучерт возьми, это не будетЭто огромная проблема, потому что «предыдущий» контроллер представления в иерархии UINavigationController не имеет текстового поля, а вспомогательное представление остается поверх клавиатуры, а когда нажимаются кнопки на нем, они отправляют сообщения в освобожденное представлениеконтроллер, вызывающий сбой.
Единственное отличие, которое я могу назвать между версией iPhone / iPad, заключается в том, что версия iPhone, конечно, представляет контроллер навигации модально на весь экран, тогда как на iPad - контроллер навигациипредставлен в UIModalPresentationFormSheet.
Надеюсь, этого достаточно, чтобы кто-то смог диагностировать проблему.Если это не так, я опубликую пример проекта.