Добавление музыки в LibGDX не работает.Получите сообщение об ошибке, в котором говорится, что newMusic не является методом. У кого-нибудь еще была эта проблема в последнее время? - PullRequest
0 голосов
/ 23 ноября 2018
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 онииспользовал строчные буквы вместо прописных, но при смене их на строчные, которые тоже не работали.

Как будто у аудио / аудио просто нет этого метода.

1 Ответ

0 голосов
/ 23 ноября 2018

Ваш код должен импортировать класс 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 Audio на audio также не будет работать (если только вы статически не импортируетеcom.badlogic.gdx.Gdx.audio, как во втором примере) - только audio будет означать поле или локальную переменную audio.

...