У меня есть поповер, содержащий UINavigationController. Я могу отображать поповер хорошо, и он содержит navController просто отлично. NavController содержит tableView, и когда я выбираю элемент, он создает новый подробный вид:
DeviceDetailViewController *detailViewController =
[[[DeviceDetailViewController alloc] initWithNibName:@"DeviceDetailViewController" bundle:nil] autorelease];
Затем я нажимаю новый контроллер вида:
[self.navigationController pushViewController:detailViewController animated:YES];
Это происходит, когда возникает проблема: после нажатия нового вида, когда поповер изменяет размер до максимальной высоты, доступной на iPad.
Я попытался установить высоту всех представлений в xib на фиксированную высоту, а не на гибкость. Я попытался явно установить высоту поповера. Я также попытался использовать различные контроллеры представления в качестве дочернего представления. Проблема остается: поповер хочет, чтобы автоматически изменял свой размер до максимальной высоты всякий раз, когда на навигационный контроллер выдвигается новый вид.
Вот вопрос , в котором обсуждается попытка преднамеренно контролировать размер всплывающего окна при нажатии новых представлений:
Я думал, что это может быть метод грубой силы, чтобы контролировать размер. Как ни странно, однако, это на самом деле вызывает некоторые быстрые графические причуды (как будто представление было недавно анимировано), после чего продолжается изменение размера, как описано выше.
Другими словами, что-то буквально заставляет поповер достичь максимальной высоты, и, кажется, это происходит после , когда были вызваны все методы делегата.
Это навигационный контроллер? Кто-нибудь видел такие вещи?