分配给 ID 来自以下代码中显示的不兼容类型“CameraVIewController*”警告
UIImagePickerController * picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
最佳答案
实际上,我认为真正的原因是你错过了协议(protocol)“UINavigationControllerDelegate”
在 UIImagePickerController.h 中,您可以看到委托(delegate)定义:
@property(nonatomic,assign) id <UINavigationControllerDelegate, UIImagePickerControllerDelegate> delegate;
所以如果你想像这样分配委托(delegate):
picker.delegate = self;
self viewController 必须实现 UINavigationControllerDelegate 和 UIImagePickerControllerDelegate
如果你只实现UIImagePickerControllerDelegate,你找不到任何错误文字,但你会收到警告“Assigning to id from incompatible type ''CameraVIewController''* ", 将 UINavigationControllerDelegate 添加到您的 viewController 的协议(protocol)声明中应该摆脱它。
这是一个很晚的答案,但我刚刚遇到并解决了它,希望它能有所帮助。
关于iphone - 从不兼容的类型警告分配给,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8937095/