UIImagePickerController предупреждение делегата - PullRequest
11 голосов
/ 02 марта 2012

Я только что добавил сборщик фотографий в свой проект, и все работает отлично.Единственное, что он настаивает на том, чтобы дать мне следующее предупреждение, где я устанавливаю делегата -

Assigning to 'id<UINavigationControllerDelegate,UIImagePickerDelegate>' from incompatible type 'AddTargetViewController *'

Я настроил делегата в AddTargetViewController.h обычным способом -

@interface AddTargetViewController : UIViewController <UIImagePickerControllerDelegate>

и я не вижу ничего плохого.Как я уже сказал, все работает нормально, и все методы делегата запускаются как надо.

-(void)takePhoto {

    UIImagePickerController *imagePicker = [[[UIImagePickerController alloc] init] autorelease];

    imagePicker.delegate = self; // *** warning on this line ***
    imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;
    imagePicker.cameraCaptureMode = UIImagePickerControllerCameraCaptureModePhoto;

    [self presentModalViewController:imagePicker animated:YES];

}

Спасибо за любую помощь!

Ответы [ 2 ]

36 голосов
/ 03 марта 2012

Это дублирующий вопрос для iPhone - UIImagePickerControllerDelegate наследование .

Короче говоря, ваш контроллер вида должен соответствовать UINavigationControllerDelegate в дополнение к UIImagePickerDelegate.

3 голосов
/ 12 августа 2015

Вместе с UIImagePickerControllerDelegate просто добавьте UINavigationControllerDelegate в ваш .h файл, и он должен работать нормально.

...