赞
踩
console.log(res.errCode) //错误码
})
//开始播放
audioCtx.play()
},
slider组件是小程序表单组件中的一种,用于滑动选择某一个值,在本项目中将用来实现播放器的进度条
| 属性 | 类型 | 说明 |
| :-: | :-: | :-: |
| min | Number | 最小值,默认为0 |
| max | Number | 最大值,默认为100 |
| step | Number | 步长,取值大于0,可被(max-min)整除,默认为1 |
| value | Number | 当前取值,默认为0 |
| activeColor | Color | 已选择的颜色,默认为#1aad19 |
| backgroundColor | Color | 背景条的颜色,默认为#e9e9e9 |
| block-size | Number | 滑块的大小,取值范围为12~28,默认为28 |
| block-color | Color | 滑块的颜色,默认为#ffffff |
| show-value | Boolean | 是否显示当前value,默认为false |
| bindchange | EventHandle | 完成一次拖动后触发的事件 |
| bindchanging | EventHandle | 拖动过程中触发的事件 |
布局文件中:
代码中:
sliderChanging:function(e)
{
console.log(e.detail.value)
}
音乐信息:显示当前播放曲目的标题和艺术家
专家封面:当音乐播放时,专辑封面会顺时针旋转
播放进度:显示当前曲目的播放时长和总时长,并提供一个进度条,当音乐播放时进度条就会增长,用户也可以手动改变进度条的进度来跳转播放进度
pages/index/index.js文件的data对象定义基础数据playlist
data: {
item:0,
tab:0,
playlist:[{
id:1,title:‘钢琴协奏曲’,singer:‘肖邦’,
src:‘http://music.163.com/song/media/outer/url?id=419485661.mp3’,
coverImgUrl:‘…/…/images/music.png’
},{
id:2,title:‘奏鸣曲’,singer:‘莫扎特’,
src:‘http://music.163.com/song/media/outer/url?id=1394618521.mp3’,
coverImgUrl:‘…/…/images/music.png’
},{
id:3,title:‘欢乐颂’,singer:‘贝多芬’,
src:‘http://music.163.com/song/media/outer/url?id=383064.mp3’,
coverImgUrl:‘…/…/images/music.png’
},{
id:4,title:‘爱之梦’,singer:‘李斯特’,
src:‘http://music.163.com/song/media/outer/url?id=5276814.mp3’,
coverImgUrl:‘…/…/images/music.png’
},
],
state:‘paused’,
playIndex:0,
play:{
currentTime:‘00:00’,
duration:‘00:00’,
percent:0,
title:‘’,
singer:‘’,
coverImgUrl:‘…/…/images/music.png’
}
},
id:每条记录的唯一标识
title:曲目标题
singer:艺术家
src:网络中的音频文件链接地址
coverImgUrl:专辑封面图片的链接地址
state:音乐的播放状态,paused表示暂停,running表示播放
playIndex:当前播放曲目在播放列表数组中的索引值
play:当前播放曲目的信息
currentTime:播放时长
duration:总时长
percent:播放进度
title:当前播放的曲目标题
singer:当前播放的曲目的艺术家
coverImgUrl:当前播放的曲目的专辑封面
{{play.title}}
{{play.singer}}
.player{
display: flex;
align-items: center;
background: #222;
border-top: 1px solid #252525;
height: 112rpx;
}
.player-cover{
width: 80rpx;
height: 80rpx;
margin-left: 15rpx;
border-radius: 8rpx;
border:1px solid #333;
}
.player-info{
flex:1;
font-size: 10pt;
line-height: 38rpx;
margin-left: 20rpx;
padding-bottom: 8rpx;
}
.player-info-singer{
color: #888;
}
.player-controls image{
width:80rpx;
height: 80rpx;
margin-right: 15rpx;
}
audioCtx:null,
onReady: function () {
this.audioCtx=wx.createInnerAudioContext()
//默认选中第1曲
this.setMusic(0)
},
setMusic:function(index){
var music=this.data.playlist[index]
this.audioCtx.src=music.src
this.setData({
playIndex:index,
‘play.title’:music.title,
‘play.singer’:music.singer,
‘play.coverImgUrl’:music.coverImgUrl,
‘play.currentTime’:‘00:00’,
‘play.duration’:‘00:00’,
‘play.percent’:0
})
},
play:function(){
this.audioCtx.play()
this.setData({state:‘running’})
},
pause:function(){
this.audioCtx.pause()
this.setData({state:‘paused’})
},
next:function(){
var index=this.data.playlist>=this.data.playlist.length-1?0:this.data.playIndex+1
this.setMusic(index)
if(this.data.state==‘running’){
this.play()
}
},
——{{play.singer}}——
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:Android)
这里我希望可以帮助到大家提升进阶。
内容包含:Android学习PDF+架构视频+面试文档+源码笔记,高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料 这几块的内容。非常适合近期有面试和想在技术道路上继续精进的朋友。
喜欢本文的话,不妨给我点个小赞、评论区留言或者转发支持一下呗~
Android)**
这里我希望可以帮助到大家提升进阶。
内容包含:Android学习PDF+架构视频+面试文档+源码笔记,高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料 这几块的内容。非常适合近期有面试和想在技术道路上继续精进的朋友。
喜欢本文的话,不妨给我点个小赞、评论区留言或者转发支持一下呗~
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。