Подтвердить что ты не робот

Назначение 'id <UINavigationControllerDelegate, UIImagePickerControllerDelegate>' из несовместимого типа 'CameraVIewController *' '

Assigning to id<UINavigationControllerDelegate,UIImagePickerControllerDelegate> from incompatible type CameraViewController* предупреждение отображается возле строки picker.delegate = self;

-(IBAction) getPhoto:(id) sender {
UIImagePickerController * picker = [[UIImagePickerController alloc] init];
picker.delegate = self;

if((UIButton *) sender == takePhoto) {
    picker.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum;
} else {
    //picker.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum;
   picker.sourceType = UIImagePickerControllerSourceTypeCamera;
}

[self presentModalViewController:picker animated:YES];

}

4b9b3361

Ответ 1

В документации для UIImagePickerController указано, что делегат должен реализовать протокол UIImagePickerControllerDelegate. Ваш CameraViewController либо не реализует этот протокол, либо не объявляет, что он делает это в своем заголовке.

Ответ 2

Обратите внимание, что для использования подборщика изображений вы должны соответствовать протоколам UIImagePickerControllerDelegate и UINavigationControllerDelegate.

Ответ 3

Просто добавьте оба протокола.

@interface MyViewController : UIViewController <UIImagePickerControllerDelegate, UINavigationControllerDelegate>

Затем установите делегат.:)