noticeView
来自于:开发者立即使用
open appendData reloadData close
概述
noticeView实现了类似京东快报,淘宝头条轮播公告样式。
open
打开notiveView轮播公告
open({params}, callback(ret))
params
rect:
- 类型:JSON 对象
- 描述:(可选项)模块的位置及尺寸
- 备注:
内部字段:
{
x: 0, //(可选项)数字类型;公告视图左上角的 x 坐标(相对于所属的 Window 或 Frame);默认:0
y: 0, //(可选项)数字类型;公告视图左上角的 y 坐标(相对于所属的 Window 或 Frame);默认:0
w: 0, //(可选项)数字类型;公告视图的宽度;默认:所属的 Window 或 Frame 的宽度
h: 50 //(可选项)数字类型;公告视图的高度;默认:40
}
style:
- 类型:JSON 对象
- 描述:(可选项)模块的样式
- 备注:
- 内部字段:
{
bgColor: '#FFFFFF',//(可选项)字符串类型;模块背景色,支持 rgb,rgba,#;默认:'#FFFFFF'
marginL: 10, //(可选项)数字类型;模块距离屏幕左边的间距;默认:0
marginR: 5, //(可选项)数字类型;模块距离屏幕右边的间距;默认:0
}
icon:
- 类型:JSON 对象
- 描述:(可选项)模块左侧图片样式
- 备注:图片容器高度不能超过模块主视图高度,图片在容器中居中显示
- 内部字段:
{
image: 'widget://image/jd.png',//字符串,支持fs、widget等本地路径协议
w: 50, //(可选项)数字类型;图片容器的宽度;默认:40
h: 50, //(可选项)数字类型;图片容器的高度;默认:40
}
message:
- 类型:JSON 对象
- 描述:(可选项)模块轮播公告内容文字样式
- 备注:
- 内部字段:
{
color: '#666666',//(可选项)字符串类型;模块公告内容文字的颜色;默认:#212121
size: 14, //(可选项)数字类型;模块公告内容文字的大小;默认:14
}
line:
- 类型:JSON 对象
- 描述:(可选项)模块内分割线样式
- 备注:分割线高度小于模块主视图高度,分割线会自动垂直居中;
- 内部字段:
{
color: '#666666',//(可选项)字符串类型;分割线颜色;默认:#666666
w : 1, //(可选项)数字类型;分割线宽度;默认:1.0
h : 20 //(可选项)数字类型;分割线高度;默认:20
}
right:
- 类型:JSON 对象
- 描述:(可选项)模块右侧文字按钮样式
- 备注:高度为自适应模块主视图高度
- 内部字段:
{
text: '更多',//(可选项)字符串类型;右侧文字按钮文本;默认:'更多'
size : 14, //(可选项)数字类型;按钮文字大小;默认:14
color : '#666666' //(可选项)字符串类型;按钮文字颜色;默认:#666666
w : 50 // (可选项)数字类型;按钮所占宽度;默认:40
}
data:
- 类型:JSON 对象
- 描述:(可选项)轮播公告的数据源
- 备注:传入data必须包含message内容,其他不限制,点击后会回掉被点击项的全部参数。
- 内部字段:
[{
message : '这是第一条轮播测试内容',
url : 'http://www.baidu.com'
}, {
message : '这是第二条轮播测试内容',
id:'测试id'
}, {
message : '这是第三条轮播测试内容',
image : 'http://baidu.com/ceshi.png'
}, {
message : '这是第四条轮播测试内容'
}, {
message : '这是第五条轮播测试内容'
}]//数组类型
Interval
- 类型:数字类型
- 描述:(可选项)模块公告的轮播频率;单位:s
- 默认值 :3.0
fixed
- 类型:布尔
- 描述:(可选项)模块是否随所属 window 或 frame 滚动
- 默认值:true(不随之滚动)
fixedOn
- 类型:字符串类型
- 描述:(可选项)模块视图添加到指定 frame 的名字(只指 frame,传 window 无效)
- 默认:模块依附于当前 window
callback(ret)
ret:
- 类型:JSON对象
- 内部字段:
{
onclick: 'message' //字符串类型,交互事件类型
//取值范围如下:
//message(公告消息的点击事件)
//right (右侧文字按钮的点击事件)
data: //JSON对象;点击公告消息时,返回对应的JSON格式数据内容;仅当onclick为message时回掉
}
示例代码
var noticeView = api.require('noticeView');
noticeView.open({
rect : {
x : 0,
y : 100,
h : 50
},
style : {
bgColor : '#ffffff',
marginL : 10,
marginR : 5
},
icon : {
image : 'widget://image/jd.png',
w : 50,
h : 50
},
message : {
color : '#212121',
size : 14
},
line : {
color : '#666',
h : 20,
w : 1
},
right : {
text : '更多',
size : 14,
color : '#666666',
w : 50
},
data : [{
message : '这是第一条轮播测试内容',
url : 'http://www.baidu.com'
}, {
message : '这是第二条轮播测试内容',
id:'测试id'
}, {
message : '这是第三条轮播测试内容',
image : 'http://baidu.com/ceshi.png'
}, {
message : '这是第四条轮播测试内容'
}, {
message : '这是第五条轮播测试内容'
}],
Interval : 3,
fixedOn : api.frameName
}, function(ret, err) {
alert(JSON.stringify(ret));
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
appendData
向列表末端追加数据
appendData({params})
params
data:
- 类型:JSON 对象
- 描述:(可选项)公告的数据源
- 备注:
- 内部字段:
{
[ {message:'这是一个测试公告的追加内容'},{message : '这是第二个测试公告的追加内容'}]//数组类型
}
示例代码
var noticeView = api.require('noticeView');
noticeView.appendData({
data : [{
message : '这是第一个测试公告的追加内容',
url : '这是一个测试返回的内容'
}, {
message : '这是第二个测试公告的追加内容'
}, {
message : '这是第三个测试公告的追加内容'
}, {
message : '这是第四个测试公告的追加内容'
}, {
message : '这是第五个测试公告的追加内容'
}]
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
reloadData
刷新列表数据
reloadData({params})
params
data:
- 类型:JSON 对象
- 描述:(可选项)公告的数据源
- 备注:
- 内部字段:
{
[ {message:'这是一个测试公告内容'}]//数组类型
}
示例代码
var noticeView = api.require('noticeView');
noticeView.reloadData({
data : [{
message : '刷新1',
url : 'http://sdfds/com'
}, {
message : '刷新2'
}, {
message : '刷新3'
}, {
message : '刷新4'
}, {
message : '刷新5'
}]
});
close
关闭轮播公告模块
close()
示例代码
var noticeView = api.require('noticeView');
noticeView.close();