dtSelector

来自于:开发者立即使用

open close show hide reloadDatas

概述

dtSelector 是一个下拉联动选择器,开发者可以自定义选择器的风格及样式。

open

打开 dtSelector 模块

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: 320, //(可选项)数字类型;模块的宽度;默认值:所属的 Window 或 Frame 的宽度
  5. h: 40 //(可选项)数字类型;模块的高度;默认值:40
  6. }

arrowImage:

  • 类型:字符串类型
  • 描述:(可选项)每个选择器右边的箭头图片,要求本地路径(fs://、widget://),支持png,jpg格式的图片
  • 默认:模块内部箭头

arrowSelectImage:

  • 类型:字符串类型
  • 描述:(可选项)每个选择器右边的箭头被选中的图片,需对arrowImage设置后才有效,要求本地路径(fs://、widget://),支持png,jpg格式的图片
  • 默认:模块内部箭头

itemCount:

  • 类型:数字类型
  • 描述:(可选值)下拉选择器项的数量
  • 默认:2

cover:

  • 类型:布尔
  • 描述:(可选项)下拉的列表是否覆盖在整个选择器的下方
  • 默认:false

datas:

  • 类型:数组
  • 描述:数据源,多层次数据结构,可无限添加层级,设置itemCount层数即可
  • 内部字段:
  1. [{
  2. tid: '1001',
  3. text: '项目1',
  4. datas: [
  5. {
  6. tid: '1011', // (可选项)字符串类型;
  7. text: '子项目1-1', // 字符串类型;列表中显示的文本
  8. }, {
  9. tid: '1012',
  10. text: '子项目1-2',
  11. }]
  12. },
  13. {
  14. tid: '1002',
  15. text: '项目2',
  16. datas: [{
  17. tid: '2001',
  18. text: '子项目2-1',
  19. }, {
  20. tid: '2002',
  21. text: '子项目2-2',
  22. }]
  23. }]

styles:

  • 类型:JSON对象
  • 描述:(可选项)模块各部分的样式
  • 内部字段:
  1. {
  2. imgW: 12, //(可选项)数字类型;箭头宽;默认:12
  3. imgH: 12, //(可选项)数字类型;箭头高;默认:12
  4. fontSize: 15, // (可选项)数字类型;选择器中字体大小;默认:15
  5. corner: 0, // (可选项)数字类型;选择器圆角;默认:0
  6. bgColor: '#fff', // (可选项)字符串类型;选择器背景色;默认:#fff
  7. textColor: '#000', // (可选项)字符串类型;选择器字体色;默认:#000
  8. selectColor: '#000', // (可选项)字符串类型;列表选择的字体色;默认:#000
  9. selectBgColor: '#efeff5', // (可选项)字符串类型;列表选择的背景色,必须设置selectColor方可生效;默认:#efeff5
  10. shadowColor: 'RGBA(0,0,0,0.3)', // (可选项)字符串类型;遮罩层背景色,默认:RGBA(0,0,0,0.3)
  11. cellH: 40, // (可选项)数字类型;列表cell的高度;默认:40
  12. cellFontSize: 15, // (可选项)数字类型;列表cell的字体大小;默认:15
  13. cellMaxShowCount: 5, // (可选项)数字类型;列表最大显示的行数,超过需拖动显示;默认:5
  14. cellTextColor: '#000', // (可选项)字符串类型;列表cell文字颜色;默认:#000
  15. }

fixedOn:

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

fixed:

  • 类型:布尔
  • 描述:(可选项)是否将模块视图固定到窗口上(不跟随窗口上下滚动),如果被其他视图遮挡,请将此值设置为true
  • 默认:false

callback(ret)

ret:

  • 类型:JSON对象
  • 描述:
  • 内部字段:
  1. {
  2. status: true, // 布尔类型,用来判断操作是否成功
  3. msg: '打开成功', // 操作结果消息
  4. index: 0, // 所点击的选择器索引(open接口返回无此参数)
  5. selectIndexes: [1, 1], // 选择器操作后,返回的对应索引数组
  6. }

示例代码

  1. var selectView = api.require('dtSelector');
  2. selectView.open({
  3. rect: {
  4. x: 0,
  5. y: 0,
  6. w: api.frameWidth,
  7. h: 40
  8. },
  9. styles: {
  10. imgW: 12,
  11. imgH: 12,
  12. fontSize: 15,
  13. corner: 0,
  14. bgColor: '#fff',
  15. textColor: '#000',
  16. selectColor: '#000',
  17. selectBgColor: '#efeff5',
  18. shadowColor: 'RGBA(0,0,0,0)'
  19. cellH: 40,
  20. cellFontSize: 15,
  21. cellTextColor: '#000',
  22. cellMaxShowCount: 5
  23. },
  24. datas: [{
  25. tid: '1001',
  26. text: '项目1',
  27. datas: [
  28. {
  29. tid: '1011',
  30. text: '子项目1-1',
  31. }, {
  32. tid: '1012',
  33. text: '子项目1-2',
  34. }]
  35. },
  36. {
  37. tid: '1002',
  38. text: '项目2',
  39. datas: [{
  40. tid: '2001',
  41. text: '子项目2-1',
  42. }, {
  43. tid: '2002',
  44. text: '子项目2-2',
  45. }]
  46. }],
  47. itemCount: 2,
  48. fixedOn: api.frameName,
  49. fixed: false,
  50. }, function(ret){
  51. if (ret.selectIndexes) {
  52. alert(ret.selectIndexes);
  53. }
  54. });

可用性

iOS系统 可提供的1.0.0及更高版本

close

关闭数据列表模块

close()

示例代码

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

可用性

iOS系统 可提供的1.0.0及更高版本

show

显示dtSelector模块

show()

示例代码

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

可用性

iOS系统 可提供的1.0.0及更高版本

hide

hide()

示例代码

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

可用性

iOS系统 可提供的1.0.0及更高版本

reloadDatas

加载新的数据

reloadDatas({params});

params

datas:

  • 类型:数组
  • 描述:数据源,多层次数据结构,可无限添加层级,设置itemCount层数即可
  • 内部字段:
  1. [{
  2. tid: '1001',
  3. text: '项目1',
  4. datas: [
  5. {
  6. tid: '1011', // (可选项)字符串类型;
  7. text: '子项目1-1', // 字符串类型;列表中显示的文本
  8. }, {
  9. tid: '1012',
  10. text: '子项目1-2',
  11. }]
  12. },
  13. {
  14. tid: '1002',
  15. text: '项目2',
  16. datas: [{
  17. tid: '2001',
  18. text: '子项目2-1',
  19. }, {
  20. tid: '2002',
  21. text: '子项目2-2',
  22. }]
  23. }]

示例代码

  1. var selectView = api.require('dtSelector');
  2. selectView.reloadDatas({
  3. datas: [{
  4. tid: '1001',
  5. text: '项目1',
  6. datas: [
  7. {
  8. tid: '1011', // (可选项)字符串类型;
  9. text: '子项目1-1', // 字符串类型;列表中显示的文本
  10. }, {
  11. tid: '1012',
  12. text: '子项目1-2',
  13. }]
  14. },
  15. {
  16. tid: '1002',
  17. text: '项目2',
  18. datas: [{
  19. tid: '2001',
  20. text: '子项目2-1',
  21. }, {
  22. tid: '2002',
  23. text: '子项目2-2',
  24. }]
  25. }]
  26. });

可用性

iOS系统 可提供的1.0.0及更高版本