我在游戏中使用JLayer播放mp3文件,但是我无法停止播放歌曲。这是我的代码:
public void play(final String sonido) {
reproduciendo.put(sonido, 1);
Thread thread = new Thread() {
public void run() {
while(reproduciendo.get(sonido)!=null) {
try {
Player player = new Player(getSonido(sonido));
player.play();
if(player.isComplete()) reproduciendo.remove(sonido);
} catch(Exception e) {e.printStackTrace();};
}}
};
thread.start();
}
public void stop (String sonido ) {
reproduciendo.remove(sonido);
}
当我用stop方法删除hashmap"reproduciendo"的歌曲时,它应该停止,但没有做任何事情,我已经在这里阅读了这种方式,但它不适合我。你知道另一种方法吗?
我不知道你使用的是什么库,但也许你可以在你的播放器类中找到一个"停止"方法。
看看我对其他类似问题的回答,只播放一个音频帧,检查是否应该暂停或停止播放
https://stackoverflow.com/a/16738486/2094045