AssetsLibrary框架提供了ALAssetsLibrary類來(lái)幫助我們?cè)L問(wèn)相冊(cè)程序管理下的照片和視頻,官方文檔見(jiàn)此。
if (!self.assetsLibrary) {
_assetsLibrary = [[ALAssetsLibrary alloc] init];
}
通過(guò)該框架,我們可以獲取相冊(cè)列表:
[_assetsLibrary enumerateGroupsWithTypes:ALAssetsGroupAll usingBlock:^(ALAssetsGroup *group, BOOL *stop) {
if (group) {
[self.groupArray addObject:group];
}
} failureBlock:^(NSError *error) {
NSLog(@"Group not found!n");
}];
通過(guò)點(diǎn)擊每個(gè)相冊(cè),我們可以訪問(wèn)相冊(cè)里的照片列表:
#pragma mark -
- (void)getImages
{
if (!self.assetsArray) {
_assetsArray = [[NSMutableArray alloc] init];
}
if (!self.assetsLibrary) {
_assetsLibrary = [[ALAssetsLibrary alloc] init];
}
@autoreleasepool {
[self.assetsGroup enumerateAssetsUsingBlock:^(ALAsset *result, NSUInteger index, BOOL *stop) {
if (result) {
TTAsset *ttAsset = [[TTAsset alloc] initWithAsset:result];
[self.assetsArray addObject:ttAsset];
[ttAsset release], ttAsset = nil;
}
}];
}
[self.tableView reloadData];
}
最后,我們可以通過(guò)自定義的Cell來(lái)定制展示風(fēng)格,比如選中效果、底部選中列表等。
更多信息請(qǐng)查看IT技術(shù)專欄
2026國(guó)考·省考課程試聽(tīng)報(bào)名