Строка состояния возвращается, когда вызывается UIImagePickerViewController? - PullRequest
4 голосов
/ 22 февраля 2012

Все в моем приложении работает, но есть одна проблема.

UIImagePickerController, кажется, возвращает строку состояния, когда она вызывается. Очевидно, что в приложении скрыта строка состояния.

Теперь я работал над этим, скрывая его после завершения или отмены выбора. Это привело к черной полосе в верхней части приложения. Поэтому после повторного отображения мне пришлось переместить заголовок заголовка и другое содержимое таблицы, чтобы оно соответствовало требованиям.

В целом все работает отлично. Однако UIImagePickerController вызывается в подробном представлении таблицы. Поэтому, когда пользователь использовал средство выбора (и его размер изменился после использования) и нажимает кнопку «Назад», чтобы вернуться к основной таблице, возникает небольшой графический сбой.

Подробное представление было смещено вверх, чтобы скрыть пустоту строки состояния, но когда я возвращаюсь к главной таблице, и приложение скользит горизонтально назад к основному виду, на долю секунды над элементами на подробный вид?

Напомним. UIImagePickerController возвращает планку состояния (по-видимому, несмотря ни на что), и после кодирования, чтобы избавиться и переформатировать представление, при возврате к основному представлению у меня возникает временная (грязная) графическая проблема.

Конечно, есть способ остановить возвращение строки состояния, поэтому мне не нужно возвращаться назад, используя код? У меня это отключено в списке.

Это очень странно! Приветствия

Ответы [ 2 ]

2 голосов
/ 17 октября 2013

Это помогает мне.

1) Вы должны делегировать UIImagePickerController

2) Добавить это в ViewController:

- (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated
{    // Esconder el StatusBar. Provocado por el iOS7 y el UIImagePickerController
    [[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationNone];
}
1 голос
/ 10 июля 2012

реализация контроллера UIimagepicker использует this.and скрывает строку состояния в plist (строка состояния изначально скрыта = true) и устанавливает размер Uiview 320x480 и реализует это

if([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary])
    {
        UIImagePickerController *picker= [[UIImagePickerController alloc]init];
        picker.delegate = self;
        picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
        [self presentModalViewController:picker animated:YES];
        [picker release];
    }
...