简体   繁体   English

Unabe使用模拟器从iOS中的UIImagePicker获取图像路径和图像?

[英]Unabe to get image path & image from UIImagePicker in ios using simulator?

I am trying to get the image path & selected image from imagepicker controller.I have used delegate method for getting the path & image but i am always getting null . 我试图从imagepicker控制器获取图像路径和选定的图像。我已经使用委托方法来获取路径和图像,但是我总是得到null

Code for showing imagepicker 显示图像选择器的代码

- (IBAction)choosePicture:(id)sender
{
    UIImagePickerController *pickerController = [[UIImagePickerController alloc]
                                                 init];
    pickerController.delegate = self;
    [self presentViewController:pickerController animated:YES completion:nil];


}

Code for delegate 代表代码

- (void) imagePickerController:(UIImagePickerController *)picker
         didFinishPickingImage:(UIImage *)image
                   editingInfo:(NSDictionary *)editingInfo
{

    //You can retrieve the actual UIImage
    UIImage *pick_image = [editingInfo valueForKey:UIImagePickerControllerOriginalImage];

    NSURL *path = [editingInfo valueForKey:UIImagePickerControllerReferenceURL];
    [picker dismissViewControllerAnimated:YES completion:^{
    }];
}

protocol code for view controller 视图控制器的协议代码

#import <UIKit/UIKit.h>

@interface RegisterViewController : UIViewController <UIImagePickerControllerDelegate, UINavigationControllerDelegate>
@property (weak, nonatomic) IBOutlet UITextField *txt_fname;
@property (weak, nonatomic) IBOutlet UITextField *txt_lname;
@property (weak, nonatomic) IBOutlet UITextField *txt_profession;
@property (weak, nonatomic) IBOutlet UITextField *txt_language;
@property (weak, nonatomic) IBOutlet UITextField *txt_email;
@property (weak, nonatomic) IBOutlet UITextField *txt_password;
@property (weak, nonatomic) IBOutlet UITextField *txt_confirm_password;
@property (weak, nonatomic) IBOutlet UITextField *txt_profile;
@property (weak, nonatomic) IBOutlet UITextField *txt_address;

@end

Maybe it better to use - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info; 也许最好使用- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info;

like 喜欢

-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
    UIImage *originalImage = info[UIImagePickerControllerOriginalImage];
}

Use this delegate method 使用此委托方法

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info

Below one is deprecated (you used) 以下一项已弃用(您使用过)

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)image editingInfo:(NSDictionary *)editingInfo NS_DEPRECATED_IOS(2_0, 3_0);

Please use [editingInfo valueForKey:UIImagePickerControllerMediaURL] inspite of [editingInfo valueForKey:UIImagePickerControllerReferenceURL]; [editingInfo valueForKey:UIImagePickerControllerMediaURL]使用[editingInfo valueForKey:UIImagePickerControllerMediaURL] ,请使用[editingInfo valueForKey:UIImagePickerControllerMediaURL] [editingInfo valueForKey:UIImagePickerControllerReferenceURL]; this will give you the path of the image. 这将为您提供图像的路径。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM