我正在开发一个libgdx游戏,我想使用这些偏好来存储玩家的进步和偏好。
到目前为止一切顺利。在android中有很好的事件可以更新首选项并将它们存储到文件系统中。
我想知道桌面端是否存在类似的东西。也就是说,有没有办法为用户关闭窗口添加一个监听器?
这样我就可以在应用程序关闭之前刷新数据。
还是有其他方法吗?
答案 0 :(得分:4)
您的主游戏实施ApplicationListener
,其中包含dispose()
方法。如果您关闭窗口或退出游戏,则会调用此方法。因此,您可以在flush()
方法中Preferences
dispose()
。
但正如@noone所说,你也应该想一想,你的应用程序可能因某些原因而崩溃。如果发生这种情况,则不会调用dispose()
。对Preference
这样的Soundoptions或Graphic设置来说,这不会是一个大问题,因为你可以在下次轻松设置它们,但如果玩家失去了进步,他将会感到沮丧。所以我会考虑使用以下方法之一:
flush()
。你可以确定一切都安全了。对于进度,您可以flush()
查看某些特殊事件/安全点flush()
。让我们说每5分钟一次?flush()
。