如何访问我在相机应用中保存照片的相册?

时间:2012-04-06 07:55:47

标签: iphone ios camera alassetslibrary

我已使用代码

将照片保存到我的应用中的自定义相册中
[library saveImage:self.capturedImg toAlbum:@"FunCam" withCompletionBlock:^(NSError *error) {
    if (error!=nil) {
        NSLog(@"Big error: %@", [error description]);
    }
}];

现在,当用户点击某个按钮并在视图中显示相机应用程序(iphone上的默认应用程序)显示时,我想要检索保存到该相册的所有照片

请帮帮我怎么办?

提前致谢

1 个答案:

答案 0 :(得分:4)

尝试这些方法......

-(void)loadNewLibraryImages
{
    self.assetGroups = [[NSMutableArray alloc] init];
    // Group enumerator Block
    dispatch_async(dispatch_get_main_queue(), ^
                   {    
                       void (^assetGroupEnumerator)(struct ALAssetsGroup *, BOOL *) = ^(ALAssetsGroup *group, BOOL *stop) 
                       {
                           if (group == nil) 
                           {
                               return;
                           }
                           if ([[group valueForProperty:ALAssetsGroupPropertyName] isEqualToString:@"YOUR ALBUM NAME"]) {
                               [self.assetGroups addObject:group];                             
                               [self loadImages];
                               return;
                           }                           

                           if (stop) {
                               return;
                           }

                       };

                       // Group Enumerator Failure Block
                       void (^assetGroupEnumberatorFailure)(NSError *) = ^(NSError *error) {

                           UIAlertView * alert = [[UIAlertView alloc] initWithTitle:@"ERROR" message:[NSString stringWithFormat:@"No Albums Available"] delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles:nil];
                           [alert show];
                           [alert release];
                       };   

                       // Enumerate Albums
                       ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];        
                       [library enumerateGroupsWithTypes:ALAssetsGroupAll
                                              usingBlock:assetGroupEnumerator 
                                            failureBlock:assetGroupEnumberatorFailure];


                   });


}

-(void)loadImages
{   
    //for (ALAssetsGroup *assetGroup in self.assetGroups) {
//  for (int i = 0; i<[self.assetGroups count]; i++) {

        ALAssetsGroup *assetGroup = [self.assetGroups objectAtIndex:0];
        NSLog(@"ALBUM NAME:;%@",[assetGroup valueForProperty:ALAssetsGroupPropertyName]);

        [assetGroup enumerateAssetsUsingBlock:^(ALAsset *result, NSUInteger index, BOOL *stop) 
         {         
         if(result == nil) 
         {
         return;
         }
            UIImage *img = [UIImage imageWithCGImage:[[result defaultRepresentation] fullScreenImage] scale:1.0 orientation:(UIImageOrientation)[[result valueForProperty:@"ALAssetPropertyOrientation"] intValue]];         

         }];  

//  }
}
希望他们能帮助....