1. 程式人生 > >iOS拍照後使用該圖片(獲取照片的ALasset傳到相簿)

iOS拍照後使用該圖片(獲取照片的ALasset傳到相簿)

問題:
拍照後,點選選擇照片在-(void)imagePickerController:(UIImagePickerController*)picker didFinishPickingMediaWithInfo:(NSDictionary *)info 的代理方法中獲取了相簿的Alasset後,發現為空

解決辦法:

-(void)imagePickerController:(UIImagePickerController*)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
    NSString *type = [info objectForKey:UIImagePickerControllerMediaType];
    if
([type isEqualToString:@"public.image"]) { //先把圖片轉成NSData UIImage* image = [info objectForKey:@"UIImagePickerControllerOriginalImage"]; ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init]; [library writeImageToSavedPhotosAlbum:[image CGImage] orientation:(ALAssetOrientation)[image imageOrientation] completionBlock:^(NSURL
*assetURL, NSError *error){ if (error) { // TODO: error handling } else { [library assetForURL:assetURL resultBlock:^(ALAsset *asset) { [self.selectPhotos addObject:asset]; [_imageCollection reloadData]; } failureBlock:^(NSError
*error) { }]; } }]; } }