Вы получаете это предупреждение, потому что объект, self
в данном случае, который вы передаете свойству UIImagePickerController
delegate
, не соответствует UIImagePickerControllerDelegate
и UINavigationControllerDelegate
протоколов.Это связано с тем, что UIImagePickerController
является подклассом UINavigationController
, который уже объявляет о своем собственном delegate
.
Свойство delegate
в UIImagePickerController
определяется как:
@property (nonatomic, assign) id <UINavigationControllerDelegate, UIImagePickerControllerDelegate> delegate;
Это означает, что он ожидает любой объект, который соответствует этим двум протоколам.
Объявление @interface
для вашего класса должно быть ...
@interface GobblesViewController : UIViewController <UIImagePickerControllerDelegate, UINavigationControllerDelegate>