【问题标题】:Javafx how to setup a Media playlistJavafx 如何设置媒体播放列表
【发布时间】:2018-04-26 22:52:43
【问题描述】:

好的,我目前正在使用 javafx 做一个琐碎的追求游戏项目,我的团队希望我添加音频问题是我有一个方法

public static void playSoundEffect(Sound sfx) {

    Media media=null;
    try {
        media = new Media(GameAudio.class.getClassLoader().getResource(sfx.getSound()).toURI().toString());
        mediaPlayer = new MediaPlayer(media);
        mediaPlayer.play();
    } catch (URISyntaxException e) {
        e.printStackTrace();
    }
}

但它有它的问题,因为如果我想静音所有音频,只有最后播放的声音会被静音,而不是整个项目的音频。

我正在考虑制作 2 个包含每个音频文件的 MediaPlayer(SFX 和音乐)列表,但我不确定如何正确设置它...我目前的尝试是使用 Enum 作为包含路径的 const 字符串.然后在某些课程中,我使用上面的方法在某个点播放声音。但是由于我总是调用一个新的 mediaPlayer 实例,所以我无法再控制它了,这就是我迷路的原因。

【问题讨论】:

  • 在您的游戏中创建一个BooleanProperty muted,然后每当您创建新的媒体播放器时,只需调用mediaPlayer.muteProperty().bind(muted)
  • 好的,谢谢,这正是我所需要的

标签: audio javafx media-player media


【解决方案1】:

正如@James_D 为静音设置的那样,我将使用BooleanProperty muted 并在每个创建的媒体播放器上调用mediaPlayer.muteProperty().bind(muted) 方法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多