Ipad应用程序如何从自定义相册中获取图像

时间:2012-10-15 05:48:22

标签: ipad photos

我正在开发一个iPad应用程序,我使用This.

将图像保存到自定义相册

现在我想获取该自定义文件夹中的所有图片,我需要在动画UIImageView中显示所有这些图片。

我知道如何设置动画,但我想知道如何从特定自定义文件夹获取所有图片

1 个答案:

答案 0 :(得分:1)

请参阅此代码我用于加载自定义相册中的图像。我使用相同的示例代码将我的图像存储在自定义相册中。

NSMutableArray *tempArray = [[NSMutableArray alloc] init];
    self.assetGroups = tempArray;

    library = [[ALAssetsLibrary alloc] init];      

    // Load Albums into assetGroups

        // Group enumerator Block
        void (^assetGroupEnumerator)(ALAssetsGroup *, BOOL *) = ^(ALAssetsGroup *group, BOOL *stop) 
        {
            if (group == nil) 
            {
                return;
            }
            if([[group valueForProperty:ALAssetsGroupPropertyName] isEqualToString:kAlbumName])
            {
                [self.assetGroups addObject:group];
                [self reloadTableView];
                return;
            }
        };

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

            CustomAlertView * alert = [[CustomAlertView alloc] initWithTitle:@"Error" message:[NSString stringWithFormat:@"Album Error: %@ - %@", [error localizedDescription], [error localizedRecoverySuggestion]] delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles:nil];
            [alert show];

            NSLog(@"A problem occured %@", [error description]);                                     
        };  

        // Enumerate Albums
        [library enumerateGroupsWithTypes:ALAssetsGroupAll
                               usingBlock:assetGroupEnumerator 
                             failureBlock:assetGroupEnumberatorFailure];

此处kAlbumName是一个字符串ivar,其中包含自定义相册名称。

修改:1

上面的代码只是为您提供了所有照片选中的整张专辑,以便从相册中获取这些照片使用以下代码

[self.assetGroup enumerateAssetsUsingBlock:^(ALAsset *result, NSUInteger index, BOOL *stop) 
     {         
         if(result == nil) 
             return;
     CGRect viewFrames = kThumbSize;//CGRectMake(0, 0, 75, 75);
         UIImageView *assetImageView = [[UIImageView alloc] initWithFrame:viewFrames];
        [assetImageView setContentMode:UIViewContentModeScaleToFill];
        [assetImageView setImage:[UIImage imageWithCGImage:(__bridge CGImageRef)([result originalAsset])]];
     }];

注意:而不是kThumbSize定义您的CGRectMake()作为评论。

享受编码:) 快乐的一天:)