#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. 集合框架、泛型、迭代(java基础知识十六)

    1.ArrayList存储自定义对象并遍历 此类的 iterator 和 listIterator 方法返回的迭代器是快速失败的:在创建迭代器之后,除非通过迭代器自身的 remove 或 add 方法 ...

  2. ES6 解构赋值的常见用途,很强大

    字符串 var [a,b,c,d,e] = "hello"; console.log(a); // h console.log(b); // e console.log(c); / ...

  3. CoreData兼容iOS9和iOS10

    由于iOS10之后CoreData Stack的更改无法在iOS9的系统中运行,所以我们需要对上一小节中封装的工具类进行系统版本的兼容 iOS9和iOS10中CoreData最本质的区别其实就是管理对 ...

  4. 自定义android 音乐通知栏 ——可伸缩扩展

    Android custom notification for music player Example   In this tutorial, you will learn how to creat ...

  5. bzoj 3073 Journeys —— 线段树优化连边

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3073 建两棵线段树,一棵从下往上连边,一棵从上往下连边,叶子节点之间也有连边: 区间向区间连 ...

  6. 【转】设置cocos2dx 屏幕分辨率

    [转载连接:]http://www.cnblogs.com/onlycxue/p/3500026.html 做手机上的软件首先要考虑的就是屏幕分辨率怎么解决.coco2dx已经有了很好的解决方法. 用 ...

  7. CodeBlocks+Qt(MinGW)配置

    1.安装CodeBlocks 官网:http://www.codeblocks.org/ 下载地址:http://www.codeblocks.org/downloads/26 有以下两种选择 cod ...

  8. python-day-9- 进程-异步IO\

    本节内容 进程 Gevent协程 Select\Poll\Epoll异步IO与事件驱动 多进程multiprocessing multiprocessing is a package that sup ...

  9. wcf中序列化BinaryFormatter,DataContractJsonSerializer,DataContractSerializer,SoapFormatter,XmlSerializer

    using System; using System.Runtime.Serialization; using System.Xml.Serialization; namespace Larryle. ...

  10. 使用mysqlfrm恢复frm表结构,获得建表语句

    1.mysqlfrm 是一个恢复性质的工具,用来读取.frm文件并从该文件中找到表定义数据生成CREATE语句. 下载链接:https://downloads.mysql.com/archives/u ...