Cocos2d-x开发之——保存数据

keyword: CCUserDefault


当我们在开发设计游戏时,需要保存游戏中的各种数据,不然如果玩家玩我们的游戏玩了一整天,然后退出了,结果我们告诉他

:"抱歉,游戏不能保存数据.",估计玩家得疯掉~
所以,Cocos2d-x提供了保存数据的功能,这个类就是CCUserDefault。它会将我们的数据存储到一个XML文件里,下次就可以

从XML文件中读取数据,但一般只用来保存简单的数据,复杂的数据还得用数据库来保存。

接下来,我们来看看CCUserDefault用于保存数据的函数:




这些函数用于保存各种类型的基础数据,第一个参数是数据的唯一标识,在获取已保存的数据时使用该唯一标识来获取。

再来看看CCUserDefault用于读取数据的函数:


我们在获取已保存的数据时,并不能保证数据一定存在,因此,我们可以给定一个默认值,如果数据不存在,就返回默认值。


来看个例子,创建一个新项目,修改HelloWorldScene.cpp中的init函数:


用调试模式运行项目,我们将看到以下日志的输出:



在运行了一次项目之后,ActorName的数据已经保存了,我们可以把setStringForKey这句代码注释掉,再次运行项目,依旧能够获取到

ActorName的数据。

在项目的Debug.win32文件夹中多了个名为 UserDefault.xml文件,里面正是我们所保存的内容。

相关文章

    本文实践自 RayWenderlich、Ali Hafizji 的文章《...
Cocos-code-ide使用入门学习地点:杭州滨江邮箱:appdevzw@1...
第一次開始用手游引擎挺激动!!!进入正题。下载资源1:从C...
    Cocos2d-x是一款强大的基于OpenGLES的跨平台游戏开发...
1.  来源 QuickV3sample项目中的2048样例游戏,以及最近《...
   Cocos2d-x3.x已经支持使用CMake来进行构建了,这里尝试...