Libgdx pause() 方法无效
Libgdx pause() method not working
因此,当用户通过按下主页按钮关闭应用程序时,我试图 运行 一段代码。我猜此刻调用了 pause()
方法。但是,当我尝试 println
暂停方法中的某些内容并通过按主页按钮 "pause" 应用程序时,pause()
功能似乎永远不会 运行。我究竟做错了什么?
@Override
public void pause() {
System.out.println("here");
}
根据您的评论,您似乎在游戏 class 中覆盖了 pause
方法而没有调用超级方法:
public void pause(){
//nothing
}
因此,游戏 class 调用活动屏幕 class 的 pause()
方法的原始功能已被您删除。
您应该确保像这样调用 super 方法,这样您就不会删除功能:
public void pause(){
super.pause();
//other code you might want to add
}
如果您不需要在此处添加代码,则根本不应在游戏 class 中覆盖 pause()
。
最重要的是,无论何时重写一个方法,总是调用 super-class 对同一方法的实现,除非你特别想改变它的行为而不是仅仅添加它。
因此,当用户通过按下主页按钮关闭应用程序时,我试图 运行 一段代码。我猜此刻调用了 pause()
方法。但是,当我尝试 println
暂停方法中的某些内容并通过按主页按钮 "pause" 应用程序时,pause()
功能似乎永远不会 运行。我究竟做错了什么?
@Override
public void pause() {
System.out.println("here");
}
根据您的评论,您似乎在游戏 class 中覆盖了 pause
方法而没有调用超级方法:
public void pause(){
//nothing
}
因此,游戏 class 调用活动屏幕 class 的 pause()
方法的原始功能已被您删除。
您应该确保像这样调用 super 方法,这样您就不会删除功能:
public void pause(){
super.pause();
//other code you might want to add
}
如果您不需要在此处添加代码,则根本不应在游戏 class 中覆盖 pause()
。
最重要的是,无论何时重写一个方法,总是调用 super-class 对同一方法的实现,除非你特别想改变它的行为而不是仅仅添加它。