iPhone - ModalViewController не поднимается в верхнюю часть экрана - PullRequest
1 голос
/ 17 марта 2011

У меня есть UIImagePickerController, который отображается

[self presentModalViewController:self.picker animated:NO];

Затем в коде я разрешаю пользователю отображать панель настроек:

PreferencesController *nextWindow = [[[PreferencesController alloc] initWithNibName:@"Preferences" bundle:nil] autorelease];
UINavigationController* navController = [[[UINavigationController alloc] initWithRootViewController:nextWindow] autorelease];
[self presentModalViewController:navController animated:YES];

В этот момент новый контроллер поднимается на экран, но не идет наверх. Некоторое пространство остается «прозрачным» вверху (я вижу вид сзади камеры), а нижняя часть вида скрыта за пределами экрана. Пространство, о котором я говорю, это высота строки состояния. Строка состояния отсутствует на экране.

Контроллер навигации скрыт:

self.navigationController.navigationBarHidden = YES;

В верхней части окна есть панель инструментов. Ничего особенного в представлении. Высота вида определяется на уровне 480. Все моделируемые элементы отключены в IB. Все свойства авторазмера установлены.

У меня был предыдущий xib (я восстановил его с нуля), который работал очень хорошо. Я не вижу, что я пропустил на этом (я только изменил XIB, который заменяет предыдущий).

Я очистил кеш, чтобы убедиться, что ничего не осталось. Без изменений... Я удалил все в новом представлении, чтобы предотвратить некоторые конфликты. Без изменений ...

Что я пропустил? Как я мог удалить это пустое место?

Ответы [ 2 ]

2 голосов
/ 17 марта 2011

Попробуйте представить второй модальный контроллер вида (предпочтения один) из self вместо self.picker

Загрузка ModalViewController поверх другого модального

Редактировать:

Попробуйте установить wantFullScreenLayout = YES

0 голосов
/ 19 марта 2011

После некоторых поисков и некоторых других проблем я нашел окончательное решение проблемы через этот вопрос

Мне пришлось позвонить:

[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationNone];

при запуске приложения.

...