UIImagePickerController를 호출하여 카메라를 통해 이미지를 선택하거나 전화로 사진 라이브러리를 통해 이미지를 선택하는 옵션을 제공하는 iPhone 앱이 있습니다. 문제는 때때로 didFinishPickingImage 대리자 메시지에서 반환해야하는 editingInfo 사전 개체가 비어 있거나 (null) 반환되는 경우가 있습니다 (항상 복제 할 수는 없습니다). 다른 사람이 전에 본 적이 있습니까?UIImagePickerControllerDelegate 빈 "editingInfo"사전 객체를 반환합니다.
내 .h 파일에서 UIImagePickerControllerDelegate를 구현하고 있는데 두 개의 대리자 메서드 인 didFinishPickingImage 및 imagePickerControllerDidCancel을 올바르게 구현하고 있습니다.
도움을 주시면 감사하겠습니다. 미리 감사드립니다.
다음내 코드는 ...
내 .H 파일 :
@interface AddPhotoController : UIViewController <UIImagePickerControllerDelegate, UINavigationControllerDelegate> {
IBOutlet UIImageView *imageView;
IBOutlet UIButton *snapNewPictureButton;
IBOutlet UIButton *selectFromPhotoLibraryButton;
}
@property (nonatomic, retain) UIImageView *imageView;
@property (nonatomic, retain) UIButton *snapNewPictureButton;
@property (nonatomic, retain) UIButton * selectFromPhotoLibraryButton;
내하는 .m 파일 :
@implementation AddPhotoController
@synthesize imageView, snapNewPictureButton, selectFromPhotoLibraryButton;
- (IBAction)getCameraPicture:(id)sender
{
UIImagePickerController *picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
picker.sourceType = UIImagePickerControllerSourceTypeCamera;
picker.allowsImageEditing = YES;
[self presentModalViewController:picker animated:YES];
[picker release];
}
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)image editingInfo:(NSDictionary *)editingInfo
{
NSLog(@"Image Meta Info.: %@",editingInfo);
UIImage *selectedImage = image;
imageView.image = selectedImage;
self._havePictureData = YES;
[self.useThisPhotoButton setEnabled:YES];
[picker dismissModalViewControllerAnimated:YES];
}
- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker
{
[picker dismissModalViewControllerAnimated:YES];
}