imageDragSort

来自于:开发者立即使用

open addImage startEdit close show hide cancleEditState

论坛示例

为帮助用户更好更快的使用模块,论坛维护了一个示例,示例中包含示例代码、知识点讲解、注意事项等,供您参考。

概述

imageDragSort 封装了一个图片拖拽排序的功能。本模块类似open一个frame,开发者可指定其所依附的窗口(通过fixedOn参数)。开发者只需要传入图片资源,就可以长按图片就可以触发编辑状态,拖动图片进行排序,也可以在长按的过程中删掉图片。传入的图片资源,可以从其他相册相关的模块中获取。

imageDragSort - 图1

注意: 在 iOS 平台上通过 UIMediaScanner 、UIAlbumBrowser 模块从手机相册获取的图片路径,需调用 transPath 接口转换,然后传给本模块,本模块可通过路径从手机相册获取指定图片。此时,云编译时需要勾选相册访问权限。

open

打开

open({params}, callback(ret, err))

params

rect:

  • 类型:JSON 类型
  • 描述:(可选项)模块的位置及尺寸
  • 内部字段:
  1. {
  2. x: 0, //(可选项)数字类型;模块左上角的 x 坐标(相对于所属的 Window 或 Frame);默认值:0
  3. y: 0, //(可选项)数字类型;模块左上角的 y 坐标(相对于所属的 Window 或 Frame);默认值:0
  4. w:300, //(可选项)数字类型;模块宽度(相对于所属的 Window 或 Frame;默认300
  5. h:600 //(可选项)数字类型;模块高度(相对于所属的 Window 或 Frame;默认300
  6. }

styles:

  • 类型:JSON 类型
  • 描述:(可选项)模块各部分的样式
  • 内部字段:
  1. {
  2. mark: { //(可选项)JSON对象;长按后显示,删除图标的样式
  3. icon: '', //(可选项)字符串类型;图标路径(本地路径,支持fs://、widget://);默认:删除图标
  4. size: 20 //(可选项)数字类型;图标的大小;默认:显示的缩略图的宽度的三分之一
  5. },
  6. layout: {
  7. column:3 , // (可选项)数字类型,图片有几列;默认:3
  8. margin:15, // (可选项)数字类型,图片上下左右间距;默认:15
  9. }
  10. }

imgArray:

  • 类型:数组 类型
  • 描述:所有图片路径组成的数组,图片路径是本地路径,支持fs://、widget://

fixedOn:

  • 类型:字符串类型
  • 描述:(可选项)模块视图添加到指定 frame 的名字(只指 frame,传 window 无效)
  • 默认:模块依附于当前 window

fixed:

  • 类型:布尔类型
  • 描述:(可选项)是否将模块视图固定到窗口上,不跟随窗口上下滚动
  • 默认:false

callback(ret, err)

ret:

  • 类型:JSON 对象内部字段:
  1. {
  2. status:true, // 显示成功
  3. eventType: 'enterEditMode' // 字符串类型;该参数仅会在长按进入编辑模式时触发回调
  4. }

示例代码

  1. var imageDragSort = api.require('imageDragSort');
  2. imageDragSort.open({
  3. rect: {
  4. x: 0,
  5. y: 0,
  6. w: 300,
  7. h: 600
  8. },
  9. styles:{
  10. mark: {
  11. icon: '',
  12. size: 20
  13. },
  14. layout: {
  15. column:3 ,
  16. margin:15,
  17. }
  18. },
  19. imgArray:["","",""],
  20. fixedOn: api.frameName,
  21. fixed: false
  22. }, function(ret, err) {
  23. if (ret) {
  24. alert(JSON.stringify(ret));
  25. } else {
  26. alert(JSON.stringify(err));
  27. }
  28. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

addImage

再次添加图片

addImage({params}, callback(ret, err))

params

imgArray:

  • 类型:数组 类型
  • 描述:所有图片路径组成的数组,图片路径是本地路径,支持fs://、widget://(所有图片的数量不要超过30张)

callback(ret, err)

ret:

  • 类型:JSON 对象内部字段:
  1. {
  2. status:true //添加成功
  3. }

示例代码

  1. var imageDragSort = api.require('imageDragSort');
  2. imageDragSort.addImage({
  3. imgArray:["","",""],
  4. }, function(ret, err) {
  5. if (ret) {
  6. alert(JSON.stringify(ret));
  7. } else {
  8. alert(JSON.stringify(err));
  9. }
  10. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

startEdit

开始编辑

startEdit()

示例代码

  1. var imageDragSort = api.require('imageDragSort');
  2. imageDragSort.startEdit();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

close

关闭

close()

示例代码

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

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

show

显示

show(callback(ret, err))

示例代码

  1. var imageDragSort = api.require('imageDragSort');
  2. imageDragSort.show();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

hide

隐藏

hide()

示例代码

  1. var imageDragSort = api.require('imageDragSort');
  2. imageDragSort.hide();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

cancleEditState

取消编辑状态

cancleEditState(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON 对象内部字段:
  1. {
  2. imgArray:["","",""] //排序后的图片数组
  3. }

示例代码

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

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

论坛示例

为帮助用户更好更快的使用模块,论坛维护了一个示例,示例中包含示例代码、知识点讲解、注意事项等,供您参考。