首页 > 解决方案 > 将音乐添加到 LibGDX 中不起作用。得到一个错误,说 newMusic 不是一种方法 最近有没有其他人遇到过这个问题?

问题描述

intro = new Audio.newMusic(Gdx.files.internal("core/assets/OpenSong.mp3"));

在javadocs中,这就是它所说的这样做

https://libgdx.badlogicgames.com/ci/nightlies/docs/api/com/badlogic/gdx/audio/Music.html

https://libgdx.badlogicgames.com/ci/nightlies/docs/api/com/badlogic/gdx/Audio.html#newMusic-com.badlogic.gdx.files.FileHandle-

在这里:https ://www.gamefromscratch.com/post/2013/11/19/LibGDX-Tutorial-8-Audio.aspx他们使用小写音频而不是大写,但是将其更改为小写时也不起作用.

就好像音频/音频没有那种方法。

标签: javalibgdx

解决方案


您的代码应该导入该类com.badlogic.gdx.Gdx,然后您可以使用

intro = Gfx.audio.newMusic(Gdx.files.internal("core/assets/OpenSong.mp3"));

或者你可以写

// where all the import statements live
import static com.badlogic.gdx.Gdx.audio;

//  where you try to load the music
intro = audio.newMusic(Gdx.files.internal("core/assets/OpenSong.mp3"));

您的代码尝试创建一个新Audio实例(这不起作用,因为Audio它只是一个接口 - 您需要为它创建一个实现)。

仅替换new Audiowithaudio也不起作用(除非您com.badlogic.gdx.Gdx.audio像第二个示例中那样静态地 import )-audio单独意味着 field 或 local variable audio


推荐阅读