2014-04-05 48 views
0

我試圖將使用相機拍攝的照片保存到iOS7中的自定義相冊中。 我的代碼看起來是這樣的:將圖像保存到iOS7中的自定義相冊

ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init]; 
__block ALAssetsGroup* folder; 
[library enumerateGroupsWithTypes:ALAssetsGroupAlbum 
         usingBlock:^(ALAssetsGroup *group, BOOL *stop) 
{ 
    if ([[group valueForProperty:ALAssetsGroupPropertyName] isEqualToString:@"UrbanAlphabets"]) 
    { 
     folder = group; 
    } 
} 
        failureBlock:^(NSError* error) 
{ 
    // Error handling. 
}]; 
[library writeImageToSavedPhotosAlbum:(__bridge CGImageRef)(image) 
          metadata:nil 
         completionBlock:^(NSURL* assetURL, NSError* error) 
{ 
    if (error.code == 0) 
    { 
     // Get the asset 
     [library assetForURL:assetURL 
       resultBlock:^(ALAsset *asset) 
     { 
      // Assign the photo to the album 
      [folder addAsset:asset]; 
      NSLog(@"success"); 
     } 
       failureBlock:^(NSError* error) 
     { 
      // Error handling. 
      NSLog(@"error1"); 
     }]; 


    } 
    else 
    { 
     // Error handling. 
     NSLog(@"error"); 
    } 
}]; 

,實際上控制檯日誌「成功」,所以我想一切都應該被罰款,但它並沒有把照片放入文件夾...我非常copypasted的代碼從這裏 http://www.ggkf.com/iphone/save-a-photo-to-a-folder-in-photo-library 任何想法?

回答

0

,這使得它的工作

//write to photo library 
NSString *[email protected]"Urban Alphabets"; 
ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init]; 
__block ALAssetsGroup* groupToAddTo; 
[library enumerateGroupsWithTypes:ALAssetsGroupAlbum 
         usingBlock:^(ALAssetsGroup *group, BOOL *stop) { 
          if ([[group valueForProperty:ALAssetsGroupPropertyName] isEqualToString:albumName]) { 
           groupToAddTo = group; 
          } 
         } 
        failureBlock:^(NSError* error) { 
        }]; 
CGImageRef img = [croppedImage CGImage]; 
[library writeImageToSavedPhotosAlbum:img 
          metadata:nil 
         completionBlock:^(NSURL* assetURL, NSError* error) { 
          if (error.code == 0) { 

           // try to get the asset 
           [library assetForURL:assetURL 
             resultBlock:^(ALAsset *asset) { 
              // assign the photo to the album 
              [groupToAddTo addAsset:asset]; 
             } 
             failureBlock:^(NSError* error) { 
             }]; 
          } 
          else { 
          } 
         }]; 
相關問題