我试图通过这样做来使用暂停/恢复按钮暂停动画:
public static int gameStatus = 1;
public int gamePaused = 0;
public int gameRunning = 0;
public void create(){
gameRunning = 1;
//.. code
}
public void render(){
if(gameStatus == gameRunning){
//some code ..
pause.setClickListener( new ClickListener() {
@Override
public void click(Actor actor, float x, float y) {
System.out.println("pause is pressed");
//to stop the animation at a particular frame
spriteBatch.begin();
spriteBatch.draw(currentFrame, 100, 100);
spriteBatch.end();
if(gameStatus!=gamePaused)
{
gameStatus = gamePaused;
}
else
{
gameStatus = 1;
}
}
});
//rest of my render animation code ..
}
}
但在桌面上它显示当前帧的 3/4 和下一帧的 1/4。知道为什么吗?而在 android 中,它的行为就像整个图像在颤抖。我想知道可能是因为它一次又一次地调用 render()。我不明白为什么 android 和桌面版本的输出存在差异。他们不应该是一样的吗?我认为两者之间存在一些索引问题。还有其他人遇到过同样的问题吗?任何建议或暂停动画或教程链接的正确方法都会非常有帮助。谢谢你。