【发布时间】:2021-01-04 05:17:35
【问题描述】:
我编写了一个程序,可以同时播放 3 种不同的声音。还有一个停止按钮,当用户点击它时,所有的声音都必须停止。
AudioCache playerCache = new AudioCache();
AudioPlayer player = new AudioPlayer();
void _playFile(String yol) async {
player = await playerCache.play(yol);
}
void cancelPlay() {
player.stop();
player.stop();
}
但是当 cancelPlay 方法执行时,它只会停止最后一个声音。如何一次停止所有这些?
【问题讨论】:
-
你用的是哪个包?
-
音频播放器包。 pub.dev/packages/audioplayers
-
所有文件都在使用同一个
AudioPlayer实例播放? -
每次通过
_playFile播放文件时,都会破坏现有的player变量。相反,您可能应该保留Set<AudioPlayer>来跟踪所有未完成的播放操作(并在它们完成播放或被取消时删除条目)。