下面是内存溢出 jb51.cc 通过网络收集整理的代码片段。
内存溢出小编现在分享给大家,也给大家做个参考。
/** * 更新联系人的头像属性. * * @param aPerson 要更新其头像的联系人.联系人对象又有一个UIImage类型的avatarImage头像属性和一个Nsstring类型的nameOfdefaultimg默认图片名称属性 * @param assetUrl assetUrl字符串.一种可能的获取方式:<UIImagePickerControllerDelegate>协议方法 * - (voID)imagePickerController:(UIImagePickerController *)picker dIDFinishPickingMediawithInfo:(NSDictionary *)info * 的info参数的键UIImagePickerControllerReferenceURL对应的值 * @param defaultimagename 默认图片路径.当无法通过assetUrl获取地址时,会尝试使用此图片地址来获取图片文件. */- (voID) updateAvaterImageOfPerson: (CFPerson *) aPerson assetUrlString: (Nsstring *) assetUrl defaultimagename: (Nsstring *) defaultimagename{ if (nil == aPerson) { // 联系人对象为空,直接返回. return; } // 是否是应用内置图片? aPerson.avatarImage = [UIImage imagenamed: assetUrl]; if (nil != aPerson.avatarImage) { return; } // 是否是本地图片? ALAssetsLibrary *lib = [[[ALAssetsLibrary alloc] init] autorelease]; [lib assetForURL:[NSURL URLWithString:self.avatarname] resultBlock:^(ALAsset *asset) { // 使用asset来获取本地图片 ALAssetRepresentation *assetRep = [asset defaultRepresentation]; CGImageRef imgRef = [assetRep fullResolutionImage]; aPerson.avatarImage = [UIImage imageWithCGImage:imgRef scale:assetRep.scale orIEntation:(UIImageOrIEntation)assetRep.orIEntation]; if (nil == aPerson.avatarImage) {// 使用默认图片 if (nil == defaultimagename) { return; } [aPerson updateAvaterImageOfPerson: aPerson assetUrlString: aPerson.nameOfdefaultimg defaultimagename:nil]; } } failureBlock:^(NSError *error) { // 访问库文件被拒绝,则直接使用默认图片 if (nil == aPerson.avatarImage) {// 使用默认图片 if (nil == defaultimagename) { return; } [aPerson updateAvaterImageOfPerson: aPerson assetUrlString: aPerson.nameOfdefaultimg defaultimagename:nil]; } } ];}
以上是内存溢出(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
总结以上是内存溢出为你收集整理的ios根据assetUrl获取本地图片全部内容,希望文章能够帮你解决ios根据assetUrl获取本地图片所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)