customSelector

来自于:开发者立即使用

open set close hide show

概述

customSelector 是自定义分级选择器模块,开发者可自定义选择器的大小、位置、内容级别(Android 暂仅最大支持3级)和数据源及其显示样式,可设置指定选中项。本模块是由第三方模块开发者提供,使用此模块需在线云编译安装包。本模块已停止优化更新,建议使用UISelector

图片说明

open

打开选择器

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

params

x:

  • 类型:数字
  • 默认值:当前设备屏幕宽度除以4.0
  • 描述:(可选项)选择器视图左上角点坐标

y:

  • 类型:数字
  • 默认值:0
  • 描述:(可选项)选择器视图左上角点坐标

w:

  • 类型:数字
  • 默认值:当前设备屏幕的宽度除以2.0
  • 描述:(可选项)选择器视图宽

h:

  • 类型:数字
  • 默认值:当前设备屏幕的高度减80
  • 描述:(可选项)选择器视图高

bg:

  • 类型:字符串
  • 默认值:rgba(0,0,0,0)
  • 描述:(可选项)视图背景设置,支持 rgb、rgba、#、img

style:

  • 类型:JSON 对象
  • 默认值:见内部字段
  • 描述:(可选项)设置选择器的样式
  • 内部字段:
  1. {
  2. row //数字类型,每列显示的行数,默认7,可为空
  3. text:{
  4. size: //字体大小,数字类型,默认50,可为空
  5. selectedColor: //选中色,字符串,支持 rgb,rgba,#,默认#ffffff,可为空
  6. color: //常态文字颜色,字符串,支持 rgb,rgba,#,默认#218868,可为空
  7. }
  8. bg:{
  9. color: //常态背景色,字符串,支持 rgb,rgba,#,默认#87ceeb,可为空
  10. selectedColor: //选中后的背景色,字符串,支持 rgb,rgba,#,默认,#218868可为空
  11. rect: //背景视图在选择器单元格内的位置大小信息,json对象,可为空
  12. {
  13. w: //背景视图的宽,默认单元格宽-20,可为空
  14. h: //背景视图的高,默认单元格高-20,可为空
  15. },
  16. zoomIn //选中后放大倍数,数字类型,默认1.2,可为空
  17. }
  18. }

dataSource:

  • 类型:数组对象/字符串
  • 默认值:无
  • 描述:选择器的数据源,若为字符串,则表示 JSON 文件的路径(支持widget,fs等协议),文件格式同下文内部字段
  • 内部字段:
  1. [{
  2. title: //一级目录的标题,字符串,不可为空
  3. contents: //一级目录的内容组成的数组,可为字符串或json对象,不可为空
  4. [{ //此内容若是字符串组成的数组,则表示该选择器为二级选择器,若本字段内容是json对象组成的数组,则表示该选择器为三级选择器,最高支持到三级,json对象的内部字段如下:
  5. title //二级目录的标题列表,字符串,不可为空
  6. contents //三级目录的内容组成的数组,数组类型,不可为空
  7. }]
  8. }]

fixedOn:

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

indexs:

  • 类型:数组
  • 默认值:每列的第一条数据
  • 描述:(可选项)设置的各列 item 的下标(不可超过本列 item 总数)组成的数组

bounce:

  • 类型:布尔
  • 默认值:true
  • 描述:(可选项)列表滑动到头是否弹动

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: //布尔值,操作是否成功
  3. selects: //从各级目录选取的内容组成的数组,若本选择器是自定义的二级选择器,则此数组包含两个元素,若本选择器是自定义的三级选择器,则此数组包含三个元素
  4. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. msg: //错误信息,字符串类型
  3. }

示例代码

  1. var customSelector = api.require('customSelector');
  2. customSelector.open({
  3. dataSource: [{
  4. title: 'A',
  5. contents: [{
  6. title: 'a',
  7. contents: ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10']
  8. }]
  9. }, {
  10. title: 'B',
  11. contents: ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']
  12. }, {
  13. title: 'C',
  14. contents: ['1a', '2b', '3c', '4d', '5e', '6f', '7g', '8h', '9i', '10j']
  15. }, {
  16. title: 'D',
  17. contents: ['1t', '2t', '3t', '4t', '5t', '6t', '7t', '8t', '9t', '10t']
  18. }, {
  19. title: 'E',
  20. contents: ['1a', '2a', '3a', '4a', '5a', '6a', '7a', '8a', '9a', '10a']
  21. }, {
  22. title: 'F',
  23. contents: ['1f', '2f', '3f', '4f', '5f', '6f', '7f', '8f', '9f', '10f']
  24. }, {
  25. title: 'G',
  26. contents: ['1!', '2!', '3!', '4!', '5!', '6!', '7!', '8!', '9!', '10!']
  27. }, {
  28. title: 'H',
  29. contents: ['1th', '2th', '3th', '4th', '5th', '6th', '7th', '8th', '9th', '10th']
  30. }, {
  31. title: 'I',
  32. contents: ['one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine', 'ten']
  33. }, {
  34. title: 'J',
  35. contents: ['壹', '貮', '叁', '肆', '伍', '陆', '柒', '捌', '玖', '拾']
  36. }, {
  37. title: 'K',
  38. contents: ['一', '二', '三', '四', '五', '六', '七', '八', '九', '十']
  39. }]
  40. }, function(ret, err) {
  41. if (ret.status) {
  42. alert(JSON.stringify(ret));
  43. } else {
  44. alert(JSON.stringify(err));
  45. }
  46. });

补充说明

初始化选择器,并打开

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

set

设置选择器选中的 items

set({params})

params

indexs:

  • 类型:数组
  • 默认值:无
  • 描述:设置的各列 item 的下标(不可超过本列 item 总数)组成的数组

示例代码

  1. var customSelector = api.require('customSelector');
  2. customSelector.set({
  3. indexs: [2, 3, 6]
  4. });

补充说明

设置选中状态

可用性

iOS 系统

可提供的1.0.0及更高版本

close

关闭选择器

close()

示例代码

  1. var customSelector = api.require('customSelector');
  2. customSelector.close();
  3. ```js
  4. ##补充说明
  5. 关闭时间选择器
  6. ##可用性
  7. iOS 系统
  8. 可提供的1.0.0及更高版本
  9. #**hide**<div id="4"></div>
  10. 隐藏选择器
  11. hide()
  12. ##示例代码

var customSelector = api.require(‘customSelector’); customSelector.close();

  1. ##补充说明
  2. 隐藏选择器,并没有从内存里清除
  3. ##可用性
  4. iOS 系统
  5. 可提供的1.0.1及更高版本
  6. #**show**<div id="5"></div>
  7. 显示选择器
  8. show()
  9. ##示例代码

var customSelector = api.require(‘customSelector’); customSelector.show(); ```js

补充说明

显示已隐藏的选择器

可用性

iOS 系统

可提供的1.0.1及更高版本