首先我们要添加AssetsLibrary库
#import <AssetsLibrary/AssetsLibrary.h>
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
[self setTitle:[AppDelegate appDelegate].mainListDataSource[2]];
self.navigationItem.rightBarButtonItems = [NSArray arrayWithObjects:[[UIBarButtonItem alloc]initWithTitle:@"相册" style:UIBarButtonItemStyleDone target:self action:@selector(pickPicture)], nil];
_showPicIMGV.layer.cornerRadius = 20;
_showPicIMGV.layer.borderWidth = 1;
_showPicIMGV.layer.masksToBounds = YES;
}
- (void)pickPicture {
if([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary]) {
UIImagePickerController *imgPicker = [[UIImagePickerController alloc]init];
imgPicker.delegate = self;
imgPicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
[self.navigationController presentViewController:imgPicker animated:YES completion:^{
}];
}
}
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<NSString *,id> *)info{
NSURL *imgUrl = [info objectForKey:UIImagePickerControllerReferenceURL];
ALAssetsLibraryAssetForURLResultBlock resultBlock = ^(ALAsset *myAsset){
ALAssetRepresentation *reprsentation = [myAsset defaultRepresentation];
imgName = [reprsentation filename];
UIImage *img = [info objectForKey:UIImagePickerControllerOriginalImage];
_showPicIMGV.image = img;
[picker dismissViewControllerAnimated:YES completion:nil];
};
[[[ALAssetsLibrary alloc]init]assetForURL:imgUrl resultBlock:resultBlock failureBlock:nil];
}