如何使用Gear s2中的挡板播放下一个/上一个音频文件?

时间:2015-12-01 15:31:25

标签: javascript audio rotation gears

开发齿轮s2的Web应用程序时,我试图在顺时针/逆时针旋转挡板时播放下一个/上一个音频文件。

就像手表上的“音乐播放器”一样。

到目前为止我尝试的内容如下,但是当我顺时针旋转表圈时只播放第二首歌曲,当我旋转CCW时,只播放第一首歌曲。 我不知道如何写它以便每次旋转挡板时,它都会转到下一首歌。

var audio = new Audio();
var source = ["songs/coldplay.mp3", "songs/abba.mp3", "songs/goodbye.mp3", "songs/sleep.mp3"];
var i = 0;
var current = null;

rotaryDetentHandler = function(e) {

direction = e.detail.direction;

if (direction === "CW") {
   if(i <source.length)
       i++;
    else i=source.length;
    }

if (direction === "CCW") {

  if(i>0)
      i-- ;
  else i = 0;
}
if(current !=null)
   {stop();}
audio.src = source [i];
audio.load();
audio.play();
current = audio;
} 

function stop()
  {
      current.pause();
  }

希望有人能够找出问题所在或者是否有其他方法可以解决问题。 谢谢。

1 个答案:

答案 0 :(得分:1)

对于任何有这个问题的人,我终于找到了问题所在。 您必须向页面添加EventListener,如下所示:

page.addEventListener(“pagebeforeshow”,function(){

//做点什么

});