6、Preferences(首选项)

首选项(Prefererces)是一个为你的应用程序存储少量数据的简单方式,例如用户设置、较小的游戏状态存档等等。首选项的工作类似于一个HashMap,用一个字符串作为键(key),各种各样的原始类型作为值(value)。当您的应用程序在浏览器中运行时,首选项也是编写持久数据的唯一方法。

获取一个首选项实例

首选项实例化对象可通过如下代码获取:

Preferences prefs = Gdx.app.getPreferences("My Preferences");

值得注意的是你的应用程序可以获得多个首选项的实例,只需要给他们不同的名字即可。

写入与读取值

修改首选项中的设置值与修改一个Map一样简单

prefs.putString("name", "Donald Duck");
String name = prefs.getString("name", "No name stored");

prefs.putBoolean("soundOn", true);
prefs.putInteger("highscore", 10);

getter方法有两个重载方法,有或者没有默认值,在首选项中找不到所规定的值时默认值会被返回。

刷新缓冲(Flushing)

只有显示调用 flush() 方法时,才会保留对首选项实例的更改。

// 批量更新您的首选项设置
prefs.flush();

存储位置(Storage)

在 Windows、Linux、OS X 中设置会以xml文件的形式存储在用户的home目录中。

OS 存储位置
Windows %UserProfile%/.prefs/My Preferences
Linux 和 OS X ~/.prefs/My Preferences

文件名取决于你调用Gdx.app.getPreferences()时取的名字,这对于你想手动删除某些测试设置时很有用。

在 Android 系统中,首选项将会调用 SharedPreferences,这就意味着设置将会在应用升级时得以保留,在应用卸载后被删除。

在 iOS 系统中 NSMutableDictionary 将会被写入上述文件。 [per javadocs]

猜你喜欢

转载自blog.csdn.net/qq_32651723/article/details/83649993
今日推荐