#import<AssetsLibrary/AssetsLibrary.h>

-(void)getImgs{

dispatch_async(dispatch_get_main_queue(), ^{

NSAutoreleasePool *pool = [[NSAutoreleasePoolalloc] init];

ALAssetsLibraryAccessFailureBlock failureblock = ^(NSError *myerror){

NSLog(@"相册访问失败 =%@", [myerrorlocalizedDescription]);

if ([myerror.localizedDescription rangeOfString:@"Global denied access"].location!=NSNotFound) {

NSLog(@"无法访问相册.请在'设置->定位服务'设置为打开状态.");

}else{

NSLog(@"相册访问失败.");

}

};

ALAssetsGroupEnumerationResultsBlock groupEnumerAtion = ^(ALAsset *result,NSUInteger index, BOOL *stop){

if (result!=NULL) {

if ([[result valueForProperty:ALAssetPropertyType]isEqualToString:ALAssetTypePhoto]) {

NSString *urlstr=[NSString stringWithFormat:@"%@",result.defaultRepresentation.url];//图片的url

/*result.defaultRepresentation.fullScreenImage//图片的大图

result.thumbnail                            //图片的缩略图小图

//                    NSRange range1=[urlstr rangeOfString:@"id="];

//                    NSString *resultName=[urlstr substringFromIndex:range1.location+3];

//                    resultName=[resultName stringByReplacingOccurrencesOfString:@"&ext=" withString:@"."];//格式demo:123456.png

*/

[self._dataArray addObject:urlstr];

}

}

};

ALAssetsLibraryGroupsEnumerationResultsBlock

libraryGroupsEnumeration = ^(ALAssetsGroup* group,BOOL* stop){

if (group == nil)

{

}

if (group!=nil) {

NSString *g=[NSString stringWithFormat:@"%@",group];//获取相簿的组

NSLog(@"gg:%@",g);//gg:ALAssetsGroup - Name:Camera Roll, Type:Saved Photos, Assets count:71

NSString *g1=[g substringFromIndex:16 ] ;

NSArray *arr=[NSArray arrayWithArray:[g1componentsSeparatedByString:@","]];

NSString *g2=[[arr objectAtIndex:0]substringFromIndex:5];

if ([g2 isEqualToString:@"Camera Roll"]) {

g2=@"相机胶卷";

}

NSString *groupName=g2;//组的name

[groupenumerateAssetsUsingBlock:groupEnumerAtion];

}

};

ALAssetsLibrary* library = [[ALAssetsLibraryalloc] init];

[libraryenumerateGroupsWithTypes:ALAssetsGroupAll

usingBlock:libraryGroupsEnumeration

failureBlock:failureblock];

[library release];

[pool release];

});

}

//------------------------根据图片的url反取图片-----

ALAssetsLibrary *assetLibrary=[[ALAssetsLibraryalloc] init];

NSURL *url=[NSURLURLWithString:urlStr];

[assetLibrary assetForURL:url resultBlock:^(ALAsset *asset)  {

UIImage *image=[UIImage imageWithCGImage:asset.thumbnail];

cellImageView.image=image;

}failureBlock:^(NSError *error) {

NSLog(@"error=%@",error);

}

];

//---------------------

ios-获取系统相簿里边的所有照片的更多相关文章

  1. IOS 获取系统时间戳

    IOS 获取系统时间戳常用方法 通用方法有如下三种: NSLog(); NSDate* dat = [NSDate dateWithTimeIntervalSinceNow:]; NSTimeInte ...

  2. iOS 获取系统音量

    //设置一个全局变量 UISilder * volumeViewSlider; #pragma mark - 获取系统音量 - (void)configureVolume { volumeView = ...

  3. IOS 获取系统通讯录

    进入正题  获取系统通讯录,不想多讲,留下链接http://my.oschina.net/joanfen/blog/140146 通常做法: 首先创建一个ABAddressBookRef类的对象add ...

  4. ios获取系统时间

    //获取系统时间 NSDate * date=[NSDate date]; NSDateFormatter *dateformatter=[[NSDateFormatter alloc] init]; ...

  5. iOS 获取系统相册数据(不是调系统的相册)

    Framework:AssetsLibrary.framework 主要目的是获取到系统相册的数据,并把系统相册里的照片显示出来. 1.创建一个新的项目: 2.将AssetsLibrary.frame ...

  6. IOS获取系统时间 NSDate

    //返回当前时间,精确到毫秒.- (NSString *)getTimeNow { NSString* date; NSDateFormatter * formatter = [[NSDateForm ...

  7. IOS 获取系统相册和拍照使用HXPhotoPicker 返回页面时页面上移被nav遮住问题

    解决: - (void)viewWillAppear:(BOOL)animated{    [super viewWillAppear:animated]; self.automaticallyAdj ...

  8. IOS 获取系统通讯录中的联系人信息

    - (IBAction)getAllContactFromSystem { ABAddressBookRef ab = ABAddressBookCreateWithOptions(NULL, NUL ...

  9. iOS - 获取系统时间年月日,阳历(公历)日期转农历的方法

    //获取当前时间 NSDate *now = [NSDate date]; NSLog(@" now date is: %@ ",now); NSCalendar *calenda ...

随机推荐

  1. YTU 2419: C语言习题 等长字符串排序

    2419: C语言习题 等长字符串排序 时间限制: 1 Sec  内存限制: 128 MB 提交: 650  解决: 249 题目描述 在主函数中输入n(n<=10)个等长的字符串.用另一函数对 ...

  2. MYSQL进阶学习笔记十二:MySQL 表分区!(视频序号:进阶_29,30)

    知识点十三:MySQL 表的分区(29) 一.什么要采用分区: 分区的定义: 当数据量过大的时候(通常是指百万级或千万级数据的时候),这时候需要将一张表划分几张表存储.一些查询可以得到极大的优化,这主 ...

  3. java 正则表达式 -Regular Expression

    正则表达式(Regular Expression),可以说就是一个字符构成的串,它定义了一个用来搜索匹配字符串的模式.正则表达式定义了字符串的模式,可以用来搜索.编辑或处理文本,不仅限于某一种语言(P ...

  4. 倒排列表求交集算法 包括baeza yates的交集算法

    #ifndef __INTERSECT_HPP__ #define __INTERSECT_HPP__ #include "probe.hpp" namespace themas ...

  5. U3D Navigation

    让我们来一起粗步认识一下NavMesh的简单使用 首先我们建立一个新场景,在新场景我们创建 一个地形或者创建一个Plane, 然后在其上面用Cube或者其它的建立一些障碍物 再创建自己需要为其设置自动 ...

  6. JS 之正则表达式

    字符 含意 \ 做为转意,即通常在"\"后面的字符不按原来意义解释,如/b/匹配字符"b",当b前面加了反斜杆后/\b/,转意为匹配一个单词的边界. -或- 对 ...

  7. 【转】IntelliJ IDEA2017.3激活

    原文地址:https://blog.csdn.net/qq_27686779/article/details/78870816 http://idea.java.sx/ 简单快捷!! ———————— ...

  8. 基于active状态类名的web交互开发

    demo: 默认是这样的: 当我们点击更多按钮后,会以CSS3动画的方式展开剩余所有文字信息,如下动图: 下面我们看下关键的CSS代码,这个.active是如何自身无样式的: .box { max-h ...

  9. Java中的Cloneable接口与深拷贝、浅拷贝

    Cloneable接口是一个标记接口,也就是没有任何内容,定义如下: 这里分析一下这个接口的用法,clone方法是在Object种定义的,而且是protected型的,只有实现了这个接口,才可以在该类 ...

  10. Eclipse的maven工程不小心移除了Maven Dependencies,如何添加回来?

    转自:https://blog.csdn.net/eininotop/article/details/71124533 选择该工程--> 点击右键--> 选择Properties--> ...