selectList

来自于:模块开发者立即使用

open close reloadData setRefreshHeader setRefreshFooter hide show deleteItem refreshItem insertItem setSelected getSelected getIndex getData getSortedData

论坛示例

为帮助用户更好更快的使用模块,论坛维护了一个示例,示例中包含示例代码供您参考。

概述

selectList封装了一个选择列表,开发者可自定义列表的选择图标、选择内容、以及右边字母导航索引的样式,亦可对单条数据进行增删该查操作。

open

打开

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

params

x:

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

y:

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

w:

  • 类型:数字
  • 默认值:当前屏幕宽度
  • 描述:(可选项)列表视图的宽

h:

  • 类型:数字
  • 默认值:当前屏幕的高
  • 描述:(可选项)列表视图的高

style:

  • 类型:JSON 对象
  • 默认值:无
  • 描述:列表数据源
  • 内部字段:
  1. {
  2. bg: //(可选项)列表背景设置,支持 rgb、rgba、#、img,默认#FFFFFF
  3. borderColor: //(可选项)每个cell之间分割线的颜色,支持 rgb,rgba,#,默认#696969
  4. itemNormal: //(可选项)item的常态下背景色,支持 rgb,rgba,#,默认#ffffff
  5. itemHighlight: //(可选项)item的常态下背景色,支持 rgb,rgba,#,默认#ffffff
  6. itemSelected: //(可选项)item的选中后的背景色,支持 rgb,rgba,#,默认#696969
  7. itemHeight //(可选项)item的高度,数字类型,默认44
  8. normalImg //(可选项)选择标识常态图标路径,支持widget、fs等本地路径协议,若不传则不显示
  9. selectedImg //(可选项)选择标识选中后图标路径,支持widget、fs等本地路径协议,若不传则不显示
  10. selectImgSize //(可选项)选择标识的大小,数字类型,默认20
  11. titleColor //(可选项)标题字体的颜色值,默认#696969,支持 rgb,rgba,#
  12. titleSize //(可选项)标题字体的大小,默认18
  13. subTitleColor //(可选项)子标题标题字体的颜色值,默认#696969,支持 rgb,rgba,#
  14. subTitleSize //(可选项)子标题字体的大小,默认18
  15. titleWidth //(可选项)标题的宽度,数字类型,默认50
  16. }

indicator:

  • 类型:JSON 对象
  • 默认值:无
  • 描述:(可选项)是否添加右边索引导航条
  • 备注:若不传则不显示右边索引导航条
  • 内部字段:
  1. {
  2. bgColor: //(可选项)背景色,字符串,默认透明,支持 rgb,rgba,#
  3. color: //(可选项)索引指器颜色,字符串类型,默认#A1A1A1,支持 rgb,rgba,#
  4. }

contents:

  • 类型:数组
  • 默认值:无
  • 描述:选择列表内容(字符串)组成的数组,模块内会按照a-z排序显示
  • 内部字段:
  1. [{
  2. title: //标题字符串,不传则不显示
  3. subTitle: //子标题字符串,不传则不显示
  4. }]

fixedOn:

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

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. id //返回视图的id,数字类型
  3. contents: //选中的item的数据内容的数组,内部字段如下:
  4. 内部字段:[{
  5. title: //原数据源的标题
  6. subTitle: //原数据源的子标题
  7. index: //数字类型;模块内排序后本条数据的新索引值
  8. }]
  9. }

示例代码

  1. var selectList = api.require('selectList');
  2. selectList.open({
  3. contents: [{
  4. title: '阿宝',
  5. subTitle: '131313131313'
  6. }, {
  7. title: '阿宝',
  8. subTitle: '131313131313'
  9. }, {
  10. title: '阿宝',
  11. subTitle: '131313131313'
  12. }, {
  13. title: '阿宝',
  14. subTitle: '131313131313'
  15. }, {
  16. title: '阿宝',
  17. subTitle: '131313131313'
  18. }, {
  19. title: '阿宝',
  20. subTitle: '131313131313'
  21. }, {
  22. title: '阿宝',
  23. subTitle: '131313131313'
  24. }, {
  25. title: '阿宝',
  26. subTitle: '131313131313'
  27. }]
  28. }, function(ret, err) {
  29. if (ret) {
  30. alert(JSON.stringify(ret));
  31. } else {
  32. alert(JSON.stringify(err));
  33. }
  34. });

补充说明

打开列表视图

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

close

关闭selectList

close({params})

params

id:

  • 类型:数字
  • 默认值:无
  • 描述:要操作的模块视图id

示例代码

  1. var selectList = api.require('selectList');
  2. selectList.close({
  3. id: 1
  4. });

补充说明

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

reloadData

刷新列表数据

reloadData({params})

params

contents:

  • 类型:数组
  • 默认值:无
  • 描述:(可选项)选择列表内容(字符串)组成的数组,模块内会按照a-z排序显示,若不传则仅停止加载更多状态
  • 内部字段:
  1. [{
  2. title: //标题字符串,不传则不显示
  3. subTitle: //子标题字符串,不传则不显示
  4. }]

id:

  • 类型:数字
  • 默认值:无
  • 描述:要操作的模块视图id

示例代码

  1. var selectList = api.require('selectList');
  2. selectList.reloadData({
  3. id: 1,
  4. contents: [{
  5. title: '阿宝',
  6. subTitle: '131313131313'
  7. }, {
  8. title: '阿宝',
  9. subTitle: '131313131313'
  10. }, {
  11. title: '阿宝',
  12. subTitle: '131313131313'
  13. }, {
  14. title: '阿宝',
  15. subTitle: '131313131313'
  16. }, {
  17. title: '阿宝',
  18. subTitle: '131313131313'
  19. }, {
  20. title: '阿宝',
  21. subTitle: '131313131313'
  22. }, {
  23. title: '阿宝',
  24. subTitle: '131313131313'
  25. }, {
  26. title: '阿宝',
  27. subTitle: '131313131313'
  28. }]
  29. }, function(ret, err) {
  30. if (ret) {
  31. alert(JSON.stringify(ret));
  32. } else {
  33. alert(JSON.stringify(err));
  34. }
  35. });

补充说明

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

setRefreshHeader

设置下拉刷新样式

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

params

id:

  • 类型:数字
  • 默认值:无
  • 描述:要操作的模块视图id

loadingImg:

  • 类型:字符串
  • 默认值:无
  • 描述:下拉刷新的小箭头本地图片的路径

bgColor:

  • 类型:字符串
  • 默认值:#f5f5f5
  • 描述:(可选项)下拉刷新视图的背景色

textColor:

  • 类型:字符串
  • 默认值:#8e8e8e
  • 描述:(可选项)提示文字颜色

textDown:

  • 类型:字符串
  • 默认值:下拉可以刷新…
  • 描述:(可选项)提示文字

textUp:

  • 类型:字符串
  • 默认值:松开开始刷新…
  • 描述:(可选项)提示文字

showTime:

  • 类型:布尔值
  • 默认值:true
  • 描述:(可选项)是否显示刷新时间

callback

返回触发刷新事件

示例代码

  1. var selectList = api.require('selectList');
  2. selectList.setRefreshHeader({
  3. id: 1,
  4. loadingImg: 'widget://res/selectList_arrow.png',
  5. bgColor: '#F5F5F5',
  6. textColor: '#8E8E8E',
  7. textDown: '下拉可以刷新...',
  8. textUp: '松开开始刷新...',
  9. showTime: true
  10. }, function(ret, err) {
  11. if (ret) {
  12. alert(JSON.stringify(ret));
  13. } else {
  14. alert(JSON.stringify(err));
  15. }
  16. });

补充说明

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

setRefreshFooter

设置上拉加载更多

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

params

id:

  • 类型:数字
  • 默认值:无
  • 描述:要操作的模块视图id

loadingImg:

  • 类型:字符串
  • 默认值:无
  • 描述:上拉加载更多时显示的小箭头的本地图片路径

bgColor:

  • 类型:字符串
  • 默认值:#f5f5f5
  • 描述:(可选项)上拉加载更多视图的背景色,支持 rgb,rgba,#

textColor:

  • 类型:字符串
  • 默认值:#8e8e8e
  • 描述:(可选项)提示文字颜色,支持 rgb,rgba,#

textDown:

  • 类型:字符串
  • 默认值:上拉可以加载更多…
  • 描述:(可选项)提示文字

textUp:

  • 类型:字符串
  • 默认值:松开开始加载…
  • 描述:(可选项)提示文字

showTime:

  • 类型:布尔值
  • 默认值:true
  • 描述:(可选项)是否显示刷新时间

callback(ret, err)

返回触发加载更多的事件

示例代码

  1. var selectList = api.require('selectList');
  2. selectList.setRefreshFooter({
  3. id: 1,
  4. loadingImg: 'widget://res/selectList_arrow.png',
  5. bgColor: '#F5F5F5',
  6. textColor: '#8E8E8E',
  7. textDown: '下拉可以刷新...',
  8. textUp: '松开开始刷新...',
  9. showTime: true
  10. }, function(ret, err) {
  11. if (ret) {
  12. alert(JSON.stringify(ret));
  13. } else {
  14. alert(JSON.stringify(err));
  15. }
  16. });

补充说明

加载更多的设置

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

hide

隐藏selectList列表视图

hide({params})

params

id:

  • 类型:数字
  • 默认值:无
  • 描述:要操作的模块视图id

示例代码

  1. var selectList = api.require('selectList');
  2. selectList.hide({
  3. id: 1
  4. });

补充说明

隐藏列表视图,并没有从内存里清除

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

show

显示列表视图

show({params})

params

id:

  • 类型:数字
  • 默认值:无
  • 描述:要操作的模块视图id

示例代码

  1. var selectList = api.require('selectList');
  2. selectList.show({
  3. id: 1
  4. });

补充说明

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

deleteItem

删除指定索引的数据

deleteItem({params})

params

index:

  • 类型:数字
  • 默认值:列表最后一条数据的索引
  • 描述:(可选项)要删除的数据的索引

id:

  • 类型:数字
  • 默认值:无
  • 描述:要操作的模块视图id

示例代码

  1. var selectList = api.require('selectList');
  2. selectList.deleteItem({
  3. id: 1,
  4. index: 2
  5. });

补充说明

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

refreshItem

刷新指定index条目的数据

refreshItem({params})

params

id:

  • 类型:数字
  • 默认值:无
  • 描述:要操作的模块视图id

index:

  • 类型:数字
  • 默认值:0
  • 描述:(可选项)要刷新数据的item索引下标

content:

  • 类型:json
  • 默认值:无
  • 描述:(可选项)选择列表内容(字符串)组成的json对象
  • 内部字段:
  1. {
  2. title: //标题字符串,不传则不显示
  3. subTitle: //子标题字符串,不传则不显示
  4. }

示例代码

  1. var selectList = api.require('selectList');
  2. selectList.refreshItem({
  3. id: 1,
  4. index: 2,
  5. content: {
  6. title: 'APICloud',
  7. subTitle: '000000000'
  8. }
  9. });

补充说明

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

insertItem

插入指定索引的数据

insertItemItem({params})

params

id:

  • 类型:数字
  • 默认值:无
  • 描述:要操作的模块视图id

index:

  • 类型:数字
  • 默认值:列表最后一条数据的索引
  • 描述:(可选项)要插入的item索引下标

content:

  • 类型:json
  • 默认值:无
  • 描述:(可选项)选择列表内容(字符串)组成的json对象
  • 内部字段:
  1. {
  2. title: //标题字符串,不传则不显示
  3. subTitle: //子标题字符串,不传则不显示
  4. }

示例代码

  1. var selectList = api.require('selectList');
  2. selectList.insertItem({
  3. id: 1,
  4. index: 2,
  5. content: {
  6. title: 'APICloud',
  7. subTitle: '000000000'
  8. }
  9. });

补充说明

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

setSelected

设置选中的条目

setSelected({params})

params

id:

  • 类型:数字
  • 默认值:无
  • 描述:要操作的模块视图id

index:

  • 类型:数字
  • 默认值:0
  • 描述:(可选项)要设置选中项的item索引

selected:

  • 类型:布尔
  • 默认值:true
  • 描述:(可选项)是否设置为选中状态

示例代码

  1. var selectList = api.require('selectList');
  2. selectList.setSelected({
  3. id: 1,
  4. index: 2
  5. });

补充说明

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

getSelected

获取当前选中的条目

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

params

id:

  • 类型:数字
  • 默认值:无
  • 描述:要操作的模块视图id

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. contents: //选中的item的数据内容的数组,内部字段如下:
  3. 内部字段:[{
  4. title: //原数据源的标题
  5. subTitle: //原数据源的子标题
  6. index: //数字类型;模块内排序后本条数据的新索引值
  7. }]
  8. }

示例代码

  1. var selectList = api.require('selectList');
  2. selectList.getSelected({
  3. id: 1
  4. }, fucntion(ret, err) {
  5. if (ret) {
  6. alert(JSON.stringify(ret));
  7. } else {
  8. alert(JSON.stringify(err));
  9. }
  10. });

补充说明

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

getIndex

根据唯一标识查找该item在列表中的下标

getIndex({params}, callBack(ret, err))

params

id:

  • 类型:数字
  • 默认值:无
  • 描述:要操作的模块视图id

key:

  • 类型:字符串
  • 默认值:无
  • 描述:唯一标识的key

value:

  • 类型:字符串
  • 默认值:无
  • 描述:每条item数据的唯一标识

callBack

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. index: //获取的item的索引
  3. }

示例代码

  1. var selectList = api.require('selectList');
  2. selectList.getIndex({
  3. key: 'uid',
  4. value: '0000001'
  5. }, function(ret, err) {
  6. if (ret) {
  7. alert(JSON.stringify(ret));
  8. } else {
  9. alert(JSON.stringify(err));
  10. }
  11. });

补充说明

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

getData

根据item的索引获取item的数据

getData({params}, callBack(ret, err))

params

id:

  • 类型:数字
  • 默认值:无
  • 描述:要操作的模块视图id

index:

  • 类型:数字
  • 默认值:0
  • 描述:(可选项)要获取数据的item的索引

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. content: //选中的item的数据内容的数组,内部字段如下:
  3. 内部字段:{
  4. title: //原数据源的标题
  5. subTitle: //原数据源的子标题
  6. }
  7. }

示例代码

  1. var selectList = api.require('selectList');
  2. selectList.getData({
  3. index: 0
  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及更高版本

getSortedData

获取排序后的所有的数据

getSortedData({params}, callBack(ret, err))

params

id:

  • 类型:数字
  • 默认值:无
  • 描述:要操作的模块视图id

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. contents: //open时传入的数据源经过排序处理后的新数组,内部字段如下:
  3. 内部字段:[{
  4. title: //原数据源的标题
  5. subTitle: //原数据源的子标题
  6. }]
  7. }

示例代码

  1. var selectList = api.require('selectList');
  2. selectList.getSortedData({
  3. id: 1
  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及更高版本