UIAlbum

立即使用

open close transPath requestAlbumPermissions

概述

本模块封装了图片资源选择功能

注意:使用本模块前需在云编译页面添加勾选访问相册权限,否则会有崩溃闪退现象

注意:本模块 iOS 平台上最低适配系统版本为 iOS 9.0

模块接口

open

打开图片资源选择器,打开后会全屏显示

open({params}, callback(ret))

params

max:

  • 类型:数字
  • 描述:(可选项)最多选择几张图片
  • 默认值:9

styles:

  • 类型:JSON 对象
  • 描述:(可选项)模块各部分的样式
  • 内部字段:
  1. {
  2. bg: 'rgba(36,36,36,1)', //(可选项)字符串类型;资源选择器背景,支持 rgb,rgba,#;默认:'rgba(36,36,36,1)'
  3. mark: { //(可选项)JSON对象;选中图标的样式
  4. unSelectedIcon:'', //(可选项)字符串类型;未选中图标路径(本地路径,支持fs://、widget://);默认:圆形灰色对勾图标
  5. icon: '', //(可选项)字符串类型;选中图标路径(本地路径,支持fs://、widget://);默认:圆形绿色对勾图标
  6. },
  7. nav: { //(可选项)JSON对象;导航栏样式
  8. bg: 'rgba(36,36,36,1)', //(可选项)字符串类型;导航栏背景,支持 rgb,rgba,#;默认:'rgba(36,36,36,1)'
  9. titleColor: '#fff', //(可选项)字符串类型;标题文字颜色,支持 rgb,rgba,#;默认:'#fff'
  10. finishText: '上传', //(可选项)字符串类型;上传按钮文字内容;默认:'上传'
  11. finishColor: '#FFFF00', //(可选项)字符串类型;上传按钮的文字颜色,支持 rgb,rgba,#;默认:'#FFFF00'
  12. backUrl: '', //(可选项)字符串类型;返回按钮图片路径,支持fs、widget;默认:模块自带按钮
  13. },
  14. header: { //(可选项)JSON对象;头视图样式
  15. bg: 'rgba(36,36,36,1)', //(可选项)字符串类型;头视图背景,支持 rgb,rgba,#;默认:'rgba(36,36,36,1)'
  16. titleColor: '#fff', //(可选项)字符串类型;头视图文字颜色,支持 rgb,rgba,#;默认:'#fff'
  17. titleSize: 18, //(可选项)数字类型;头视图文字大小,默认:18
  18. },
  19. bottom: { //(可选项)JSON对象;底部视图样式
  20. bg: 'rgba(36,36,36,1)', //(可选项)字符串类型;底部视图背景,支持 rgb,rgba,#;默认:'rgba(36,36,36,1)'
  21. btnTitle: '确定', //(可选项)字符串类型;底部视图按钮文字内容;默认:'确定'
  22. btnTitleColor: '#000', //(可选项)字符串类型;底部视图按钮文字颜色,支持 rgb,rgba,#;默认:'#000'
  23. btnTitleSize: 20, //(可选项)数字类型;底部视图按钮文字大小,默认:20
  24. btnBgColor: '#FFFF00', //(可选项)字符串类型;底部视图按钮背景颜色,支持 rgb,rgba,#;默认:'#FFFF00'
  25. btnCorners: 20, //(可选项)数字类型;底部视图按钮圆角,默认:20
  26. }
  27. }

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. eventType: cancel, //字符串类型;按钮点击事件,取值范围
  3. //upload 用户点击上传按钮事件
  4. //cancel 用户点击取消按钮事件
  5. list: [{ //数组类型;返回选定的资源信息数组
  6. path: '', //字符串类型;资源路径,返回资源在本地的绝对路径,注意:iOS 平台上需要用 transPath 接口转换之后才可读取原图
  7. thumbPath: '', //字符串类型;缩略图路径,返回资源缩略图在本地的绝对路径
  8. size: 1048576, //数字类型;资源大小,单位(Bytes)
  9. time: '1490580032000', //字符串类型;资源修改时间,格式:时间戳,单位为毫秒。
  10. }]
  11. }

示例代码

  1. var UIAlbum = api.require('UIAlbum');
  2. UIAlbum.open({
  3. max: 9,
  4. styles: {
  5. bg: 'rgba(36,36,36,1)',
  6. mark: {
  7. unSelectedIcon:'',
  8. icon: '',
  9. },
  10. nav: {
  11. bg: 'rgba(36,36,36,1)',
  12. titleColor: '#fff',
  13. finishText: '上传',
  14. finishColor: '#FFFF00',
  15. backUrl: '',
  16. },
  17. header: {
  18. bg: 'rgba(36,36,36,1)',
  19. titleColor: '#fff',
  20. titleSize: 18,
  21. },
  22. bottom: {
  23. bg: 'rgba(36,36,36,1)',
  24. btnTitle: '确定',
  25. btnTitleColor: '#000',
  26. btnTitleSize: 20,
  27. btnBgColor: '#FFFF00',
  28. btnCorners: 20,
  29. }
  30. }
  31. }, function(ret) {
  32. if (ret) {
  33. alert(JSON.stringify(ret));
  34. }
  35. });

可用性

iOS系统,android系统

可提供的1.0.0及更高版本

close

关闭图片资源选择器

close()

示例代码

  1. var UIAlbum = api.require('UIAlbum');
  2. UIAlbum.close();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

requestAlbumPermissions

请求相册权限

requestAlbumPermissions( callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. isAccessPermissions: true //布尔类型;是否有相册权限
  3. }

示例代码

  1. var UIAlbum = api.require('UIAlbum');
  2. UIAlbum.requestAlbumPermissions({
  3. }, function(ret, err) {
  4. if (ret) {
  5. alert(JSON.stringify(ret));
  6. } else {
  7. alert(JSON.stringify(err));
  8. }
  9. });

可用性

iOS系统

可提供的1.0.0及更高版本

transPath

将相册图片地址转换为可以直接使用的本地路径地址(临时文件夹的绝对路径),相册图片会被拷贝到临时文件夹,调用 api.clearCache 接口可清除该临时图片文件

transPath({params}, callback(ret))

params

path:

  • 类型:字符串
  • 描述:要转换的图片路径(在相册库的绝对路径)

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. path: '' //字符串类型;相册内图片被拷贝到临时文件夹,返回已拷贝图片的绝对路径
  3. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: false //转化失败
  3. }

示例代码

  1. var UIAlbum = api.require('UIAlbum');
  2. UIAlbum.transPath({
  3. path: ''
  4. }, function(ret, err) {
  5. if (ret) {
  6. alert(JSON.stringify(ret));
  7. } else {
  8. alert(JSON.stringify(err));
  9. }
  10. });

可用性

iOS系统

可提供的1.0.0及更高版本