将相机卷照片获取到自定义集合视图

时间:2014-03-22 09:03:02

标签: ios iphone objective-c uicollectionview uiimagepickercontroller

我有一个带细胞的自定义集合视图。这是我的CollectionView代码。

- (UICollectionViewCell *)collectionView:(UICollectionView *)cv cellForItemAtIndexPath:(NSIndexPath *)indexPath;
{
    Cell *cell = [cv dequeueReusableCellWithReuseIdentifier:@"MY_CELL" forIndexPath:indexPath];

    return cell;
}

我想从相机胶卷和相机中获取图像。显示在这些单元格中。如何在此单元格中查看相机胶卷图像?我应该使用数组存储图像的名称和放大器吗?然后在Cell中显示它们? 任何人都可以给我一个代码解决方案。

1 个答案:

答案 0 :(得分:2)

您可以使用<AssetsLibrary/AssetsLibrary.h>框架获取相册和照片/视频资源:

-(void)getAlbum
{
   library = [[ALAssetsLibrary alloc] init];
ALAssetsLibraryGroupsEnumerationResultsBlock listGroupBlock = ^(ALAssetsGroup *group, BOOL *stop) {

        if (group)
       {
            [_albumsArray addObject:group];
        } else {
            [self.tableView performSelectorOnMainThread:@selector(reloadData) withObject:nil waitUntilDone:NO];
        }
    };

   [library enumerateGroupsWithTypes:ALAssetsGroupAll usingBlock:listGroupBlock failureBlock:failureBlock]
}

选择相册时,您将通过以下方式获取照片/视频

-(void)getAssets
{
    ALAssetsGroupEnumerationResultsBlock assetsEnumerationBlock = ^(ALAsset * result, NSUInteger index, BOOL *stop) {

        if (result)
        {

        }
        else
        {
            [self.tableView reloadData];
        }
    };

    [_assetGroup setAssetsFilter:[ALAssetsFilter allAssets]];

    [_assetGroup enumerateAssetsUsingBlock:assetsEnumerationBlock];
}

请参阅此link以获取更多信息和示例与表格视图。您可以使用UICollectionView

替换表格视图

谢谢!