简体   繁体   English

从NSURL UIImagepicker Controller iOS 9获取图像名称

[英]Get the image name from NSURL UIImagepicker Controller iOS 9

I have picked image from UIImagePickerController, after that i get the info dictionary of its delegate method. 我从UIImagePickerController中选择了图像,然后得到其委托方法的信息字典。 I want to get image name from NSURL Please suggest code for iOS 9, because ALAsset library code has been deprecated to get image name. 我想从NSURL获取图像名称,请建议使用iOS 9的代码,因为不建议使用ALAsset库代码来获取图像名称。

NSURL *imageURL = [info valueForKey:UIImagePickerControllerReferenceURL]; 

import asset library 进口资产库

Try This, You will get image name in cstmGetUploadImageName method 试试这个,您将在cstmGetUploadImageName方法中获得图像名称

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

    //    selected image
    UIImage *chosenImage = info[UIImagePickerControllerEditedImage];
    self.img_profilepic.image = chosenImage;

    //    NSString *setimageName;
    // get the ref url
    NSURL *refURL = [info valueForKey:UIImagePickerControllerReferenceURL];

    // define the block to call when we get the asset based on the url (below)
    ALAssetsLibraryAssetForURLResultBlock resultblock = ^(ALAsset *imageAsset)
    {
        ALAssetRepresentation *imageRep = [imageAsset defaultRepresentation];
        NSLog(@"[imageRep filename] : %@", [imageRep filename]);
        [self cstmGetUploadImageName:[imageRep filename]];

    };

    // get the asset library and fetch the asset based on the ref url (pass in block above)
    ALAssetsLibrary* assetslibrary = [[ALAssetsLibrary alloc] init];
    [assetslibrary assetForURL:refURL resultBlock:resultblock failureBlock:nil];


    //    upload image method
    //[self cstmUploadImage:chosenImage withName:@"sdf"];
        [picker dismissViewControllerAnimated:YES completion:NULL];

}

- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker {

    [picker dismissViewControllerAnimated:YES completion:NULL];

}


-(void)cstmGetUploadImageName:(NSString *)filename{
    NSString  *tempFileName = filename;
    NSLog(@"%@",tempFileName);
}

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

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