iOS 获取系统图片
来源:互联网 发布:阿里云系统怎么样os 编辑:程序博客网 时间:2024/05/23 14:31
声明属性
{
NSArray *imageArray;
NSMutableArray *mutableArray;
ALAssetsLibrary *library
}
@property (strong, nonatomic) NSMutableArray *dataSource;
获取系统照片
-(void)getAllPictures
{
imageArray=[[NSArray alloc] init];
mutableArray =[[NSMutableArray alloc]init];
NSMutableArray* assetURLs = [[NSMutableArray alloc] init];
library = [[ALAssetsLibrary alloc] init];
void (^assetEnumerator)( ALAsset *, NSUInteger, BOOL *) = ^(ALAsset *result, NSUInteger index, BOOL *stop) {
if(result != nil) {
if([[result valueForProperty:ALAssetPropertyType] isEqualToString:ALAssetTypePhoto]) {
[assetURLs addObject:[result valueForProperty:ALAssetPropertyURLs]];
NSURL *url= (NSURL*) [[result defaultRepresentation]url];
[library assetForURL:url resultBlock:^(ALAsset *asset) {
[mutableArray addObject:[UIImage imageWithCGImage:[[asset defaultRepresentation]fullScreenImage]]];
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults removeObjectForKey:@"dataSource"];
if ([mutableArray count]==count)
{
imageArray=[[NSArray alloc] initWithArray:mutableArray];
NSData *imageList = [NSKeyedArchiver archivedDataWithRootObject:imageArray];
[defaults setObject:imageList forKey:@"dataSource"];
}
}failureBlock:^(NSError *error){ NSLog(@"operation was not successfull!"); } ];
}
}
};
NSMutableArray *assetGroups = [[NSMutableArray alloc] init];
void (^ assetGroupEnumerator) ( ALAssetsGroup *, BOOL *)= ^(ALAssetsGroup *group, BOOL *stop) {
if(group != nil) {
[group enumerateAssetsUsingBlock:assetEnumerator];
[assetGroups addObject:group];
count=(int)[group numberOfAssets];
}
};
assetGroups = [[NSMutableArray alloc] init];
[library enumerateGroupsWithTypes:ALAssetsGroupAll
usingBlock:assetGroupEnumerator
failureBlock:^(NSError *error) {NSLog(@"There is an error");}];
}
设置数据源
- (void)initDataSource{
NSArray *images = [[NSUserDefaults standardUserDefaults] objectForKey:@"dataSource"];
self.dataSource = [NSMutableArray arrayWithArray:images];
}
*如果获取照片太多,使用GCD异步进行处理
*设置数据源后得到的数组所包含的类型是UIImage类型,可直接加在Cell上显示
- IOS获取系统图片
- iOS 获取系统图片
- IOS获取系统相册图片
- iOS 系统相册获取图片,保存图片,以及剪切图片
- iOS 横屏中添加UIImagePickerController获取系统图片
- iOS中获取系统相册中的图片
- iOS中获取系统相册中的图片
- iOS中获取系统相册中的图片
- iOS获取系统相册中的图片
- ios读取系统相册以及获取图片的名字
- iOS:获取图片Alpha图片
- ios获取网络图片
- iOS 获取图片路径
- iOS-获取启动图片
- Android获取系统图片
- ios学习--获取通过UIImagePackerController获取的系统相册 图片&视频 的名称信息
- iOS 系统图片选择器
- iOS 系统图片详解
- 继 <ZMQ的学习和研究> Request-reply worker in C++
- HTTP referer说明
- cocos2d-x 3.x DrawNode的使用
- Java开发环境搭建
- windows下elasticSearch以及elasticSearch-php安装及使用
- iOS 获取系统图片
- [IMX6DL]超声波模块HC-SR04 Linux驱动源代码
- 删除有序数组中重复出现的元素
- String类_获取,判断,转换,替换,切割
- Java内存分配分析
- 使用Eclipse+MyEclipse+MySql开发一个用户注册登录模块
- input常用的正则表达式JS
- Linux kernel panic学习笔记
- iOS 在tableView或scrollView上,消退键盘