我在onSceneTouchEvent
中使用以下代码:
if(audioControlButton.contains(pSceneTouchEvent.getX(), pSceneTouchEvent.getY())
&& pSceneTouchEvent.getAction() == TouchEvent.ACTION_DOWN) {
toggleVolume();
}
一切正常,方法在必要时调用。 toggleVolume()
有这个实现:
if(levelMusic.getVolume() != 0f) {
levelMusic.setVolume(0f);
} else {
levelMusic.setVolume(100f);
}
所有条件似乎都有效,但问题出现在这里: 如果levelMusic.setVolume(0f)被假定音乐音量禁用应该是,但如果levelMusic.setVolume(100f)仍然调用我听不到音乐
注意:我还尝试了pause()
和resume()
,但效果不佳
我的levelMusic变量:
Music levelMusic; //field in scene class
levelMusic = data.getLevelMusic();
levelMusic.play();
on onResourcesLoadingFinished
编辑:我也尝试将值设置为60而不是100和0,9f(如果max malue是1f),但它也不能正常工作
答案 0 :(得分:0)
如果有人会遇到这个问题:
使用
levelMusic.setVolume(0.0f, 0.0f); // 0f wont work
所以,整个方法应该是这样的:
if(levelMusic.getVolume() != 0.0f) {
levelMusic.setVolume(0.0f, 0.0f);
} else {
levelMusic.setVolume(1f);
}