Отображение UIImagePickerController в UIPopoverController с существующим UINavigationController (добавление кнопки «Назад»)

Итак, у меня есть UIPopoverController, в котором находится мой UINavigationController, где у меня есть UITableViewController, однако один из моих вариантов на UITableView— пойти и выбрать изображение с помощью UIImagePickerController.., Теперь на iPhone я могу просто использовать presentModalViewController:animated:, однако вызов этого из UIPopoverController вызывает сбой, так что это невозможно...

Я также знаю, что UIImagePickerControllerнуждается в собственном UINavigationController, поэтому я не могу либо просто нажмите pushViewController:animated:...

Итак, я понял, что если я оставлю ссылку на созданный мной UIPopoverController, я смогу использовать setContentViewController:animated:для переключения на viewController UIImagePickerController...

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

Вот мой код, который я использую

-(void)doPhotoalbums {
    if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary]) {

        UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
        [imagePicker setDelegate:self];
        [imagePicker setSourceType:UIImagePickerControllerSourceTypePhotoLibrary];
        [imagePicker setContentSizeForViewInPopover:CGSizeMake(320, 480)];

        UIBarButtonItem *cancel = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCancel target:self action:nil];
        [imagePicker.navigationItem setLeftBarButtonItem:cancel];

        //[self presentModalViewController:imagePicker animated:YES];
        [[self parentPopoverController] setContentViewController:imagePicker animated:YES];

    } else {
        [UIAlertView showMessage:@"This device does not have any photo albums."];
    }
}

Итак, мой вопрос.. Кто-нибудь знает, как я могу это обойти? либо добавив кнопку отмены/назад, которую я могу подключить, чтобы заставить навигационные контроллеры переключаться назад, либо другим способом представить это (, я хотел бы избежать переключения между двумя контроллерами UIPopoverController, но я не знаю, что еще я могу сделать.,

Спасибо

Liam

11
задан liamnichols 5 May 2012 в 14:41
поделиться