iOS 把图片保存到相册,并获取图片文件名的实例

实例如下所示:

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
 UIImage *image = [info objectForKey:UIImagePickerControllerOriginalImage];
 if (picker.sourceType == UIImagePickerControllerSourceTypeCamera) {
  UIImageWriteToSavedPhotosAlbum(image,self,@selector(image:didFinishSavingWithError:contextInfo:),NULL);
 }
}
- (void)image:(UIImage*)image didFinishSavingWithError:(NSError*)error contextInfo:(void*)contextInfo
{
 if (error) {
  DLog(@"图片保存失败!");
 }else{
  DLog(@"图片保存成功!");
 }
}
此方法可以把其他来源的图片也可保存到相册

 //当image从相机中获取的时候存入相册中
 //保存方法1
//  UIImageWriteToSavedPhotosAlbum(img.image,self,@selector(image:didFinishSavingWithError:contextInfo:),NULL);
//   imageData = nil;

  WEAKSELF
  //保存方法2同时获取保存的相片文件名
  __blockALAssetsLibrary *lib = [[ALAssetsLibraryalloc] init];
  [lib writeImageToSavedPhotosAlbum:img.image.CGImagemetadata:nilcompletionBlock:^(NSURL *assetURL,NSError *error) {

   ALAssetsLibraryAssetForURLResultBlock resultblock = ^(ALAsset *imageAsset)
   {
    ALAssetRepresentation *imageRep = [imageAssetdefaultRepresentation];
    weakSelf.imageName = [NSStringstringWithFormat:@"%@",[imageRepfilename]];
    NSLog(@"[imageRep filename 1] : %@", [imageRepfilename]);
    DBLog(@"self.addressImageName照相0 = %@",weakSelf.imageName);
    commitBlock(img.image,UIImageJPEGRepresentation(img.image,0.5),self.imageName);
   };
   ALAssetsLibrary* assetslibrary = [[ALAssetsLibraryalloc] init];
   [assetslibrary assetForURL:assetURLresultBlock:resultblock failureBlock:nil];

   NSLog(@"assetURL = %@, error = %@", assetURL, error);
   lib = nil;

  }];

 }];

以上这篇iOS 把图片保存到相册,并获取图片文件名的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • iOS实现相册和网络图片的存取

    保存 UIImage 到相册 UIKit UIKit 中一个古老的方法,Objective-C 的形式 复制代码 代码如下: void UIImageWriteToSavedPhotosAlbum(UIImage *image, id completionTarget, SEL completionSelector, void *contextInfo); 保存完成后,会调用 completionTarget 的 completionSelector.如果 completionTarget 不为

  • iOS archive保存图片到本地的方法

    本文实例为大家分享了iOS保存图片到本地的具体代码,供大家参考,具体内容如下 一.工程图 二.代码 RootViewController.h #import <UIKit/UIKit.h> @interface RootViewController : UIViewController { UIImageView *imageView; } @end RootViewController.m #import "RootViewController.h" @interface

  • iOS中获取系统相册中的图片实例

    本文介绍了iOS中获取系统相册中的图片,在很多应用中都能用到,可以获取单张图片,也可以同时获取多张图片,废话不多说了,看下面吧. 一.获取单张图片 思路: 1.利用UIImagePickerController可以从系统自带的App(照片\相机)中获得图片 2.设置代理,遵守代理协议 注意这个UIImagePickerController类比较特殊,需要遵守两个代理协议 @interface ViewController () <UIImagePickerControllerDelegate,

  • iOS如何将照片保存到相册

    本文实例为大家分享了iOS将照片保存到相册的具体代码,供大家参考,具体内容如下 在使用前  请导入photos.framework 然后导入 #import <Photos/PHPhotoLibrary.h> #import <Photos/PHAssetChangeRequest.h> #import <Photos/PHImageManager.h> 方法一 使用UIImageWriteToSavedPhotosAlbum函数将图片保存到相册,如: - (void)

  • iOS 把图片保存到相册,并获取图片文件名的实例

    实例如下所示: - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info { UIImage *image = [info objectForKey:UIImagePickerControllerOriginalImage]; if (picker.sourceType == UIImagePickerControllerSo

  • Android实现长按图片保存至相册功能

    前言:前面写了一篇reactnative的学习笔记,说reactnative的Android框架中有很多福利,确实是的,也说到了我们app中的一个把图片保存到相册的功能,好吧,还是准备写一篇博客,就当笔记了- 先上几张app的图片: 一进app就是一个进度条加载图片(我待会也会说一下进度条view跟怎么监听图片加载过程): 图片加载完毕后: 长按图片进入相册可以看到我们保存的图片: 监听图片加载的loaddingview源码(不是很难,我就直接贴代码了): package com.leo.cam

  • Android 图片保存到相册不显示的解决方案(兼容Android 10及更高版本)

    目录 前言 问题 解决问题 前言 写了一个demo,简单逻辑就是:在一个图片上添加一行文字或者是水印,并且保存到系统相册,也就是我们手机上的图库.前面编辑图片添加水印都没有问题,到后面保存到系统相册出现了问题:显示不出来图片. 问题 在 Android 10 之前保存系统相册的三步骤: 保存图片到手机 把图片插入到手机图库 发广播更新 代码如下: public static void savePhotoAlbum(Context context, Bitmap bmp) { // 首先保存图片

  • js判断图片加载完成后获取图片实际宽高的方法

    本文实例讲述了js判断图片加载完成后获取图片实际宽高的方法.分享给大家供大家参考,具体如下: 通常,我们会用jq的.width()/.height()方法获取图片的宽度/高度或者用js的.offsetwidth/.offsetheight方法来获取图片的宽度/高度,但这些方法在我们通过样式设置了图片的宽高后获取的就不是图片的实际宽高,这显然在有些时候不是我们想要的结果,那么有没有一种方法来获取这样的实际宽高呢?答案是有的.下面的代码就能解决这样的问题: <img src="01.jpg&q

  • 使用pymysql查询数据库,把结果保存为列表并获取指定元素下标实例

    我就废话不多说了,大家还是直接看代码吧! from pymysql import * from qmp.config import * def main(): conn = connect(host=HOST, port=3306, database=DATABASE, user=USER, password=PASSWORD, charset='utf8') cs1 = conn.cursor() sql1 = 'SELECT deal_name from ods_project_crawle

  • 解决Android从相册中获取图片出错图片却无法裁剪问题的方法

    在学习获取相册中图片进行裁剪的时候遇到了比较大的问题,在纠结了近半天才真的解决,下面分享一下学习经验. 问题: 选择了相册中的图片之后要进入图片裁剪的时候出错,(华为)手机提示"此图片无法获取",经百度后,明白是版本不同导致的URI的问题的问题,原文如下: 4.3或以下,选了图片之后,根据Uri来做处理,很多帖子都有了,我就不详细说了.主要是4.4,如果使用上面pick的原生方法来选图,返回的uri还是正常的,但如果用ACTION_GET_CONTENT的方法,返回的uri跟4.3是完

  • ios利用 AFN 上传相册或者拍照图片

    由于项目中多处需要上传图片,我们可以自定义上传图片请求,自定义调取相册及拍照,方便多处使用时调用. 主要步骤: 1.第一步:请求上传你选取的相册图片或者拍照图片(经过压缩处理) 2.第二步:获取到第一步图片url上传给服务器 3.第三步:回显图片(当然进入该界面时先判断是否有图片,无图则展示占位图片,否则就回显图片) 废话不多说,直接上代码: 1)封装的上传图片的网络请求(图片压缩) QTXUploadImage 文件 // 利用 afn 上传一张图片 #import <Foundation/F

  • postgresql之使用lsn 获取 wal文件名的实例

    10.0及以后版本: pg_walfile_name() 用法: postgres=# select pg_current_wal_lsn(), pg_walfile_name(pg_current_wal_lsn()), pg_walfile_name_offset(pg_current_wal_lsn()); pg_current_wal_lsn | pg_walfile_name | pg_walfile_name_offset --------------------+---------

  • 沙盒路径获取以及图片保存到相簿的方法

    iphone沙盒(sandbox)中的几个目录获取方式: // 获取沙盒主目录路径 NSString *homeDir = NSHomeDirectory(); // 获取Documents目录路径 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *docDir = [paths objectAtIndex:0]; // 获取Cac

随机推荐