- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
北京iOS开发教i程OS自定义多选相册简单实现
北京iOS开发教程i?OS自定义多选相册简单实现 在开发中,猿实现从手机本地相册一次性获取多张图片需求,社交软件中发布状态时,本地相册选取多张图片发布。提到从手机本地获取图片,首先想到的是iOS系统提供的UIImagePickerCont?roller控件。UIImagePick?erControll?er以模态视图的形式将本地相册中的照片显示出来,封装度高,简单,很难满足实际多样性的功能需求。本文将针对如何实现一个iOS自定义相册给出一些,能对iOS有所帮助。 的现有资料,的实现还是比较容易的。对于很多iOS初学者来说,成熟的第三方库最大的问题是代码封装度比较高,一些的注释,理解修改,,第三方的代码陈旧,的内存管理机制对于的很多初学者都非常陌生。一下,以代码片段展示的形式来对功能的实现做分解。 1、如果获取到手机本地的所有相册? 需要的支持框架:#importAss?etsLibrary?/AssetsLib?rary.h 在实现手机本地的所有相册的控制器中,该系统框架。框架主要支持本地相册的读取以及相册的。 2)需要的类:ALAssetsLibr?ary 在控制器中声明一个ALAssetsLibrary类的属性,属性专用于获取手机本地所有的相册资源。 UI?TableView控?件示相册,cel?l展示一个相册,cell跳转到下一展示内的图片。,需要将选中的ALAssetsGro?up对象(一个对象代表了一个相册)传入下一个界面。 主要代码如下: 本地相册资源: #pragma mark -- ?获取本地相册 - (?void)getDa?taSource{ ?//1.数据源数据初?始化 if(!_da?taSource){? _dataSour?ce = [NSMu?tableArray?array]; ? } //2.图片?访问类对象初始化 i?f (!_asset?sLibrary) ?{ _assetsL?ibrary = [?[ALAssetsL?ibraryallo?c]init]; ? } //3.相?册获取 dispat?ch_async(d?ispatch_ge?t_main_que?ue(), ^{ ? [_as?setsLibrar?yenumerate?GroupsWith?Types:ALAs?setsGroupA?llusingBlo?ck:^(ALAss?etsGroup *?group, BOO?L *stop) {? //如果获取的相册?不为空 if (gr?oup) { //添?加数据 [self?.dataSourc?eaddObject?:group]; /?/主线程刷新UI [?selfperfor?mSelectorO?nMainThrea?d:@selecto?r(reloadTa?bleView) w?ithObject:?nilwaitUnt?ilDone:YES?]; } } fai?lureBlock:?^(NSError ?*error) { ?NSLog(@Gr?oup not fo?und!\n); ?//提示错误 ? }]; ? }) } 将相册展示在cell上: #pragma m?ark -- cel?l的展示 - (UI?TableViewC?ell *)tabl?eView:(UIT?ableView *?)tableView? cellForRo?wAtIndexPa?th:(NSInde?xPath *)in?dexPath{ s?taticNSStr?ing *cellI?D = @Albu?mGroupCell?; UITable?ViewCell *?cell = [ta?bleView de?queueReusa?bleCellWit?hIdentifie?r:cellID];? if (!cell?) { cell =? [[UITable?ViewCellal?loc]initWi?thStyle:UI?TableViewC?ellStyleDe?faultreuse?Identifier?:cellID]; ? } //获取?相册图片数 ALAs?setsGroup ?*group = (?ALAssetsGr?oup*)[self?.dataSourc?eobjectAtI?ndex:index?Path.row];? [group s?etAssetsFi?lter:[ALAs?setsFilter?allPhotos]?]; NSInteg?er groupCo?unt = [gro?up numberO?fAssets]; ? //相册来源 NS?String *gr?oup
文档评论(0)