2009-09-29 3 views

ответ

0

Если вы думаете об этом, self.view = picker.cameraOverlayView просто копирует пустой прозрачный вид на вас! Он даже не добавить его на экран, не то, что он будет работать ...

Вместо этого, вы должны представить контроллер сборщика:

[self.navigationController presentModalViewController:picker animated:YES]; 

Затем убедитесь, что для реализации делегата вызовов (которые похоже, что у вас есть с тех пор, как вы уже установили делегата)

1

Попробуйте это.

В методе viewDidLoad инициализируйте UIImagePickerController, назначьте его свойство sourceType как UIImagePickerControllerSourceTypeCamera и делегируйте его как self.

Определение кнопки в вашем контроллере представления, где на его событие нажатия получить вид модальный в imagepicker, как:

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

здесь подборщик является объектом UIImagePickerController.

Затем выполните команду didFinishPickingMediaWithInfo делегат UIImagePickerController. В этом делегате, вы можете назначить UIImage словаря информации объекта, а затем сохранить изображение на локальный экземпляр UIImageView (его ImageToSave ниже)

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info{ 

[[picker parentViewController] dismissModalViewControllerAnimated:YES]; 
UIImage *img = [info objectForKey:@"UIImagePickerControllerImage"]; 
ImageToSave.image = img; 

}

Не забудьте включить UIImagePickerControllerDelegate в файл .h-файла вашего основного вида.

Посмотрите, работает ли это или нет.

Смежные вопросы