Java LibGDX中音乐类的TweenAccessor

Java LibGDX中音乐类的TweenAccessor,java,libgdx,Java,Libgdx,我一直在想:是否可以在LibGDX中使用通用Tween引擎来改变歌曲的音量?我用与我的SpriteAccessor类似的代码编写了自己的MusicAccessor,它实际上适用于Sprite.class,但当涉及到音乐对象时,它总是会出现相同的错误: java.lang.RuntimeException: No TweenAccessor was found for the target 问题是,我确实通过以下方式注册我的访问器:Tween.registerAccessor(Music.cla

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

java.lang.RuntimeException: No TweenAccessor was found for the target
问题是,我确实通过以下方式注册我的访问器:
Tween.registerAccessor(Music.class,new Music accessor())我很确定它实际上正在注册,如
System.out.println(Tween.getRegisteredAccessor(Music.class))打印:
文件包的.name.of.my.packages。MusicAccessor@14bb523
。老实说,我被困住了

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


所以,我的问题是:为什么Tween引擎不能正确识别我的音乐对象的类别?有没有办法让它工作呢?还是我一直在用定时器来改变音量?更改格式或以不同的方式加载音乐文件会有帮助吗?

我个人还没有使用Tween Engine,但我认为这可能是因为音乐实际上只是一个界面


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

谢谢,casting()有效。很不幸,我一定是忽略了这个方法。谢谢!我也有同样的问题。@justaclelessnewbie你能解释一下你是如何将
Music
转换成类的吗?我很久没有使用这个库了,所以我不会提供代码示例,但你所要做的就是在tweening方法调用或管理器注册中添加
.cast(Music.class)
。如果我没记错的话,这些方法中的大多数都可以很容易地链接起来,所以添加一些强制类型就是你所需要的。你能用一个修复的例子更新一下吗?代码已经不存在了,但是我记得我所要做的就是在注册(?)tweening的音乐对象时添加
cast(Music.class)
。该方法可以链接。