UIMediaControl
概述
应用中悬浮的媒体控制控件,可进行上一首、下一首、播放、暂停等控制。
接口
openView
打开媒体控制控件
openView({params}, callback(ret, err))
params
rect:
- 类型:JSON对象类型
- 描述:预览控件位置
- 内部字段:
{
x:, //数字类型;控件左上角x坐标,默认值0
y:, //数字类型;控件左上角y坐标,默认值0
w:, //数字类型;控件宽度,100
h:, //数字类型;控件高度,100
}
bgClolor:
- 类型:字符串类型
- 描述:视图的背景颜色 ;(仅支持iOS)
- 默认:'#000000'
leftBtnRect:
- 类型:JSON对象类型
- 描述:上一曲按钮的位置和大小 ;(仅支持iOS)
- 内部字段:
{
x:, //数字类型;控件左上角x坐标(相对于打开的视图),默认值0
y:, //数字类型;控件左上角y坐标(相对于打开的视图),默认值0
w:, //数字类型;控件宽度,40
h:, //数字类型;控件高度,40
}
rightBtnRect:
- 类型:JSON对象类型
- 描述:下一曲按钮的位置和大小 ;(仅支持iOS)
- 内部字段:
{
x:, //数字类型;控件左上角x坐标(相对于打开的视图),默认值0
y:, //数字类型;控件左上角y坐标(相对于打开的视图),默认值0
w:, //数字类型;控件宽度,40
h:, //数字类型;控件高度,40
}
playBtnRect:
- 类型:JSON对象类型
- 描述:播放按钮的位置和大小 ;(仅支持iOS)
- 内部字段:
{
x:, //数字类型;控件左上角x坐标(相对于打开的视图),默认值0
y:, //数字类型;控件左上角y坐标(相对于打开的视图),默认值0
w:, //数字类型;控件宽度,40
h:, //数字类型;控件高度,40
}
playBtnStatus:
- 类型:布尔类型
- 描述:播放按钮的状态播放还是暂停 ;(仅支持iOS)
- 默认:true (播放)
closeBtnRect:
- 类型:JSON对象类型
- 描述:关闭按钮的位置和大小 ;(仅支持iOS)
- 内部字段:
{
x:, //数字类型;控件左上角x坐标(相对于打开的视图),默认值0
y:, //数字类型;控件左上角y坐标(相对于打开的视图),默认值0
w:, //数字类型;控件宽度,20
h:, //数字类型;控件高度,20
}
leftBtnImagePath:
- 类型:字符串类型
- 描述:上一曲按钮的背景图片路径;支持widget://和fs:// ;(仅支持iOS)
rightBtnImagePath:
- 类型:字符串类型
- 描述:下一曲按钮的背景图片路径;支持widget://和fs:// ;(仅支持iOS)
playBtnImagePath:
- 类型:字符串类型
- 描述:播放按钮(播放状态)的背景图片路径;支持widget://和fs:// ;(仅支持iOS)
pauseBtnImagePath:
- 类型:字符串类型
- 描述:播放按钮(暂停状态)的背景图片路径;支持widget://和fs:// ;(仅支持iOS)
closeBtnImagePath:
- 类型:字符串类型
- 描述:关闭的背景图片路径;支持widget://和fs:// ;(仅支持iOS)
slider:
- 类型:JSON对象类型
- 描述:滑块参数设置 ;(仅支持iOS)
- 内部字段:
{
sliderRect:{
x:, //数字类型;控件左上角x坐标(相对于打开的视图),默认值0
y:, //数字类型;控件左上角y坐标(相对于打开的视图),默认值0
w:, //数字类型;控件宽度,100
h:, //数字类型;控件高度,4
},
handlerRect:{ //滑块按钮大小,sliderImagePath不传设置无效
w:, //数字类型;控件宽度,10
h: //数字类型;控件高度,10
},
sliderImagePath:'', //滑块图片路径;支持widget://和fs://
sliderLeftColor:'', //滑块左边部分滑动条颜色 ;默认:'#000000'
sliderRightColor:'', //滑块右边部分滑动条颜色 ;默认:'#000000'
}
leftTimeLab:
- 类型:JSON对象类型
- 描述:左边时间 ;(仅支持iOS)
- 内部字段:
{
leftTimeRect:
{
x:, //数字类型;控件左上角x坐标(相对于打开的视图),默认值0
y:, //数字类型;控件左上角y坐标(相对于打开的视图),默认值0
w:, //数字类型;控件宽度,100
h:, //数字类型;控件高度,40
},
font:'', //字体大小;默认10
leftTimeColor:'', //字体颜色 ;默认:'#FFFFFF'
}
rightTimeLab:
- 类型:JSON对象类型
- 描述:右边时间 ;(仅支持iOS)
- 内部字段:
{
rightTimeRect:
{
x:, //数字类型;控件左上角x坐标(相对于打开的视图),默认值0
y:, //数字类型;控件左上角y坐标(相对于打开的视图),默认值0
w:, //数字类型;控件宽度,100
h:, //数字类型;控件高度,40
},
font:'', //字体大小;默认:10
rightTimeColor:'', //字体颜色 ;默认:'#FFFFFF'
}
currentProgress:
- 类型:数字类型
- 描述:(可选项)当前进度(秒)
- 默认值:0
total:
- 类型:数字类型
- 描述:总时长(秒)
isDrag:
- 类型:布尔类型
- 描述:是否可以拖拽 ;(仅支持iOS)
- 默认值:false
bubleSize:
- 类型:数字类型
- 描述:(可选项)滑块大小(仅android支持)
- 默认值:14
callback(ret,err)
ret:
- 类型:JSON对象类型
- 描述:正常回调
- 内部字段
{ status:, //布尔类型,是否正常返回 eventType:'', //字符串类型;返回事件 ‘show’: 添加显示成功 ‘close’: 点击关闭按钮 ‘play’: 点击播放按钮 ‘pause’: 点击暂停按钮 ‘next’: 点击下一个 ‘bofor’ 点击上一个 }
err:
- 类型:JSON对象类型
- 描述:错误回调
- 内部字段
{ msg:'', //字符串类型;错误信息 }
示例代码
var UIMediaControl = api.require('UIMediaControl');
UIMediaControl.openView({
rect: {
x: 10,
y: 130,
w: 300,
h: 100
},
bgClolor: '#666',
leftBtnImagePath: "widget://image/pre.png",
rightBtnImagePath: "widget://image/nex.png",
playBtnImagePath: "widget://image/play.png",
pauseBtnImagePath: "widget://image/pause.png",
closeBtnImagePath: "widget://image/huakuai.png",
playBtnRect: {
x: 130,
y: 10,
w: 40,
h: 40
},
playBtnStatus: true,
closeBtnRect: {
x: 270,
y: 70,
w: 20,
h: 20
},
leftBtnRect: {
x: 30,
y: 15,
w: 40,
h: 40
},
rightBtnRect: {
x: 230,
y: 15,
w: 40,
h: 40
},
slider: {
sliderRect:
{
x: 70, //数字类型;控件左上角x坐标(相对于打开的视图),默认值0
y: 50, //数字类型;控件左上角y坐标(相对于打开的视图),默认值0
w: 160, //数字类型;控件宽度,100
h: 30, //数字类型;控件高度,4
},
sliderImagePath: 'widget://image/huakuai20.png', //滑块图片路径;支持widget://和fs://
sliderLeftColor: '#ff0', //滑块左边部分滑动条颜色 ;默认:'#000000'
sliderRightColor: '#fff', //滑块右边部分滑动条颜色 ;默认:'#000000'
},
leftTimeLab: {
leftTimeRect:
{
x: 20, //数字类型;控件左上角x坐标(相对于打开的视图),默认值0
y: 45, //数字类型;控件左上角y坐标(相对于打开的视图),默认值0
w: 80, //数字类型;控件宽度,100
h: 40, //数字类型;控件高度,40
},
font: '12', //字体大小;默认10
leftTimeColor: '#ff0', //字体颜色 ;默认:'#FFFFFF'
},
rightTimeLab: {
rightTimeRect:
{
x: 190, //数字类型;控件左上角x坐标(相对于打开的视图),默认值0
y: 45, //数字类型;控件左上角y坐标(相对于打开的视图),默认值0
w: 80, //数字类型;控件宽度,100
h: 40, //数字类型;控件高度,40
},
font: '12', //字体大小;默认:10
rightTimeColor: '#ff0', //字体颜色 ;默认:'#FFFFFF'
},
total: 1000,
currentProgress: 100,
}, function (ret, err) {
console.log(JSON.stringify(ret));
});
可用性
Android、iOS系统
可提供的1.0.0及更高版本
closeView
关闭媒体控制控件
closeView({params}, callback(ret, err))
callback(ret,err)
ret:
- 类型:JSON对象类型
- 描述:正常回调
- 内部字段
{ status:, //布尔类型,是否成功 }
err:
- 类型:JSON对象类型
- 描述:错误回调
- 内部字段
{ msg:'', //字符串类型;错误信息 }
示例代码
var UIMediaControl= api.require('UIMediaControl');
UIMediaControl.closeView({
},function(ret, err) {
});
可用性
Android、iOS系统
可提供的1.0.0及更高版本
changePlayState
更换播放状态
changePlayState({params}, callback(ret, err))
params
state:
- 类型:字符串类型
- 描述:要切换为的状态
- 内部字段:
‘play’:播放状态,显示暂停按钮 ‘pause’:暂停状态,显示播放按钮
- 默认值:‘play’
示例代码
var UIMediaControl= api.require('UIMediaControl');
UIMediaControl.changePlayState({
},function(ret, err) {
});
可用性
Android、iOS系统
可提供的1.0.0及更高版本
updateProgress
更换播放进度
updateProgress({params}, callback(ret, err))
params
currentProgress:
- 类型:数字类型
- 描述:(可选项)当前进度(秒)
- 默认值:0
total:
- 类型:数字类型
- 描述:(可选项)总时长(秒)
示例代码
var UIMediaControl= api.require('UIMediaControl');
UIMediaControl.updateProgress({
},function(ret, err) {
});
可用性
Android、iOS系统
可提供的1.0.0及更高版本
updateProgressListening
是否监听滑块进度
updateProgressListening({params}, callback(ret))
params
isListening:
- 类型:布尔类型
- 描述:是否监听滑块进度
- 默认值:true
callback(ret,err)
ret:
- 类型:JSON对象类型
- 描述:正常回调
- 内部字段
{ movingValue:, //移动中的进度值;百分比 endValue:, //移动结束的进度值;百分比 }
示例代码
var UIMediaControl= api.require('UIMediaControl');
UIMediaControl.updateProgressListening({
},function(ret) {
});
可用性
Android、iOS系统
可提供的1.0.0及更高版本