2009-10-27 3 views
0

Я несколько раз бил головой об этом. У меня есть пример кода (с использованием UINavigationController), когда будет загружен просмотр загрузки ролика камеры. Однако, когда я пытаюсь включить тот же код в свое приложение, у которого есть tabBarController, я получаю пустой модальный UIImagePickerController. Я не отследил, что я делаю неправильно.Как реализовать UIImagePickerController с помощью TabBarController

// bring up image picker 
if ([UIImagePickerController isSourceTypeAvailable: UIImagePickerControllerSourceTypeSavedPhotosAlbum]) { 

    NSLog(@"UIImagePickerControllerSourceTypePhotoLibrary available"); 

    UIImagePickerController *ipc = [[UIImagePickerController alloc] init]; 
    ipc.delegate  = self; 
    ipc.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum; 
    ipc.allowsEditing = YES; 

    [self.tabBarController presentModalViewController:ipc animated:YES]; 
    [ipc release]; 
} 

Любое понимание будет оценено по достоинству.

+0

ли ваш образец этот код в 'viewDidLoad'? И вызывал ли он 'presentModalViewController: анимированный:' на своем контроллере навигации или сам по себе? (И вы знаете, что пример кода работает?) –

+0

Корневой контроллер вызовет presentModalViewController: анимированный: и когда метод viewDidLoad модального вида имел вышеуказанную логику. –

ответ

0

Не знаете, что изменилось, но это возможно, позвонив по телефону presentViewController с вашего tabBarController. Теперь это стандарт и гарантирует, что ваша камера или подборщик изображений всегда будут представлены в виде полноэкранного модального просмотра.

Для справки: presentViewController