我正在尝试在JavaFx中播放mp3文件列表,并且需要在每个文件之间暂停几秒钟。这个问题可能是主观的,但我找不到任何技术来处理当前播放的mediaPlayer结束时的另一个JavaFx MediaPlayer对象,该对象正在可运行的对象中播放。
任何代码示例/算法都将是一个很大的帮助。
创建一个媒体播放器列表,遍历列表并为每个媒体播放器:
- 致电mediaPlayer.setonEndofMedia。
- 在媒体结束时 Runnable 创建要暂停的持续时间的暂停过渡。
- 为暂停过渡提供一个 setOnFinished 事件处理程序,以启动列表中的下一个媒体播放器。
将@SoulMan
的评论转换为答案:
谢谢我使用了以下代码:
PauseTransition pt = new PauseTransition(Duration.millis(2000));
pt.play();
pt.setOnFinished(
new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
if (mediaPlayer3 != null) {
mediaPlayer3.play();
}
}
});