LibGDX中的music.class的TweenAccessor

我一直想知道:是否可以在LibGDX中使用通用Tween引擎 – 例如 – 更改歌曲的音量? 我编写了自己的MusicAccessor,其代码类似于我的SpriteAccessor,它实际上适用于Sprite.class,但是当涉及到音乐对象时 – 它总是会出现同样的错误:

java.lang.RuntimeException: No TweenAccessor was found for the target 

问题是,我通过以下方式注册我的访问者: Tween.registerAccessor(Music.class,new MusicAccessor()); 我很确定它实际上已经注册,如System.out.println(Tween.getRegisteredAccessor(Music.class)); print: the.name.of.my.packages.MusicAccessor@14bb523 。 老实说,我被困住了。

音乐文件本身是.mp3格式,我由资产管理器加载它。

所以,我的问题是:为什么Tween引擎无法正确识别我的音乐对象的类? 有没有办法使它工作或我是否坚持定期定时器随时间改变音量? 更改格式或以不同方式加载音乐文件有帮助吗?

我个人还没有使用Tween引擎,但我认为可能是因为Music实际上只是一个界面。

有几种不同后端和不同文件格式的实现。 例如AndroidMusicGwtMusic和另外三个OpenALMusic实现(它们都被称为Music ,位于com.badlogic.gdx.backends.openal.mp3/ogg/wav包中)。 您可以使用访问器注册它们,也可以使用我在代码中找到的Tween.cast() ,但不能使用补间引擎的官方JavaDoc。 它可能只在最新版本中。