Libgdx的Preferences

转载自:http://blog.sina.com.cn/s/blog_574b6f360102v2v1.html



Preferences是一种存储应用内数据的简便方法,比如,存储用户设定,游戏状态。Preferences的工作方法就像hash map,使用字符串作为关键字(key),其他原始类型的值作为该关键字对应的值。


 


在网页项目中,浏览器中运行游戏是,preference是目前唯一的存储游戏状态的方法。


 


声明preference


 


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


其中My Preferences是一个文件名,会在应用目录下真实存在,对于安卓,即便应用升级,该文件仍会保留,但是如果应用删除,该文件会一起被删除。


应用可以使用多个preference,只要使用不同的名字创建即可。


 


读写值


 


prefs.putString("name", "Donald Duck");


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


 


prefs.putBoolean("soundOn", true);


prefs.putInteger("highscore", 10);


 


注意第二句,在从preference中读数据时,可以使用缺省值,比如"No name stored",即如果"name"中没有数据,那么会使用该缺省值,作为该关键字读取的数据。


 


 


使修改生效


 


必须通过显式的调用flush()方法,才能是preference值真正写到文件中,永久保存


// bulk update your preferences


//then call flush to make it write to file


prefs.flush();



保存位置


 


在Windows,Linux,OS X,preference都是以xml文件存储在用户的home目录下。


| Windows |


`%UserProfile%/.prefs/My Preferences`

位置为:


C:\Users\andrew>echo `%UserProfile%/.prefs/`
`C:\Users\andrew/.prefs/`


| Linux and OS X |


`~/.prefs/My Preferences`


文件名就是Gdx.app.getPreferences()的形参,你可以手动更改它,对调试很有用。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值