用户
 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
  • TA的每日心情
    慵懒
    2017-1-6 10:46
  • 签到天数: 2 天

    [LV.1]初来乍到

    173

    主题

    182

    帖子

    945

    金钱

    咫尺尊享

    Rank: 5Rank: 5

    积分
    0
    2017-3-17 12:51:27 柿霖不是林 咫尺尊享 楼主 131092
    年前写的demo,年假家里没有网,就放下了..回来这几天抓紧时间完善了下.分享给大家哦,(歌词动态展示待优化),还有电台那里的接口暂时没有找到.找到后我再添加上去,新的一年,大家一起努力哦!,新年第一帖undefined主要功能: 歌曲暂停播放,上一首,下一首,当前歌曲播放完成后自动播放下一首,歌词动态展示
    效果图:


    关键代码
    暂停/播放


    [HTML] 纯文本查看 复制代码
    playAndPause: function () {
       var that = this
       if (that.data.isPlaying) {
         wx.pauseBackgroundAudio()
       } else {
         wx.playBackgroundAudio()
       }
       that.playSong()
       that.setData({
         isPlaying: !that.data.isPlaying
       })
     },



    上一首
    [HTML] 纯文本查看 复制代码
    before: function () {
      var that = this
      that.setData({
        currentIndex: 0,
        marginTop: 0,
        lrcHeight:200,
      })
      if (that.data.songIndex == 0) {
        that.requestDataSong(that.data.datalist[that.data.datalist.length - 1].song_id)
        that.songLrc(that.data.datalist[that.data.datalist.length - 1].song_id)
        that.setData({
          songIndex: that.data.datalist.length - 1
        })
      } else {
        that.requestDataSong(that.data.datalist[that.data.songIndex - 1].song_id)
        that.songLrc(that.data.datalist[that.data.songIndex - 1].song_id)
        that.setData({
          songIndex: that.data.songIndex - 1
        })
      }
    },


    歌曲播放

    [HTML] 纯文本查看 复制代码
    playSong: function () {
        var that = this
        let inv = setInterval(function () {
          wx.getBackgroundAudioPlayerState({
            success: function (res) {
              if (res.status == 1) {
                that.setData({
                  isPlaying: true,
                  songState: {
                    progress: res.currentPosition / res.duration * 100,
                    currentPosition: that.timeToString(res.currentPosition),
                    duration: that.timeToString(res.duration),
                  }
                })
                var i = that.data.currentIndex
                if (i < that.data.lry.length) {
                  if (res.currentPosition - 4 >= parseInt(that.data.lry[i][0])) {
                    that.setData({
                      currentIndex: i + 1
                    })
                  }
                }
                if (that.data.currentIndex >= 6) {
                  that.setData({
                    marginTop: -(that.data.currentIndex - 6) * 20,
                    lrcHeight:200 + (that.data.currentIndex - 6) * 20
                  })
                }
              } else {
                that.setData({
                  isPlaying: false
                })
                clearInterval(inv)
              }
            }
          })
        }, 1000)
      },



    游客,如果您要查看本帖隐藏内容请回复

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x
    使用道具 举报 回复
    正需要,支持楼主大人了!
    这个赞,稳,赞一个
    正需要,支持楼主大人了!
    嗯,很不错
    使用道具 举报 回复
    2017-12-29 10:32:33 awake 新人求带
    6#
    啥也不说了,感谢楼主分享哇!
    6666666666666666666666666
    支持一下
    使用道具 举报 回复
    vgggggggggggggggggggggggggggggggg

    正需要,支持楼主大人了!
    12下一页
    发新帖
    *滑动验证:
    您需要登录后才可以回帖 登录 | 立即注册
    咫尺论坛|小程序开发社区
    X