Cocos2d-x 3.2演示样例UserDefaultTest(用户默认配置)

本篇博客介绍Cocos2d-x 3.2演示样例中的UserDefaulstTest,我们在开发中可能须要用到一些默认配置,通常会以xml形式保存。

Cocos2d-x为我们提供了UserDefault类来实现这种需求。

演示样例代码:

-- enable log
--[[
UserDefaultTest.lua
用户默认配置
]]-- local function doTest()
cclog("********************** init value ***********************") -- set default value
-- 设置默认值
cc.UserDefault:getInstance():setStringForKey("string", "value1")-- 字符串
cc.UserDefault:getInstance():setIntegerForKey("integer", 10)-- 整型
cc.UserDefault:getInstance():setFloatForKey("float", 2.3)--浮点型
cc.UserDefault:getInstance():setDoubleForKey("double", 2.4)-- 双精度
cc.UserDefault:getInstance():setBoolForKey("bool", true)-- 布尔型 -- print value
-- 打印获取到的值
-- 依据key获取字符串值
local ret = cc.UserDefault:getInstance():getStringForKey("string")
cclog("string is %s", ret) -- 依据key获取双精度值
local d = cc.UserDefault:getInstance():getDoubleForKey("double")
cclog("double is %f", d) -- 依据key获取整型值
local i = cc.UserDefault:getInstance():getIntegerForKey("integer")
cclog("integer is %d", i) -- 依据key获取浮点数值
local f = cc.UserDefault:getInstance():getFloatForKey("float")
cclog("float is %f", f) -- 依据key获取布尔值
local b = cc.UserDefault:getInstance():getBoolForKey("bool")
if b == true then
cclog("bool is true")
else
cclog("bool is false")
end --cc.UserDefault:getInstance():flush() cclog("********************** after change value ***********************") -- change the value
-- 改动值
cc.UserDefault:getInstance():setStringForKey("string", "value2")
cc.UserDefault:getInstance():setIntegerForKey("integer", 11)
cc.UserDefault:getInstance():setFloatForKey("float", 2.5)
cc.UserDefault:getInstance():setDoubleForKey("double", 2.6)
cc.UserDefault:getInstance():setBoolForKey("bool", false) -- 刷新写入
cc.UserDefault:getInstance():flush() -- print value
-- 依据key获取字符串值
local ret = cc.UserDefault:getInstance():getStringForKey("string")
cclog("string is %s", ret) -- 依据key获取双精度值
local d = cc.UserDefault:getInstance():getDoubleForKey("double")
cclog("double is %f", d) -- 依据key获取整型值
local i = cc.UserDefault:getInstance():getIntegerForKey("integer")
cclog("integer is %d", i) -- 依据key获取浮点数值
local f = cc.UserDefault:getInstance():getFloatForKey("float")
cclog("float is %f", f) -- 依据key获取布尔值
local b = cc.UserDefault:getInstance():getBoolForKey("bool")
if b == true then
cclog("bool is true")
else
cclog("bool is false")
end
end function UserDefaultTestMain()
local ret = cc.Scene:create() -- 场景
local s = cc.Director:getInstance():getWinSize() -- 获取屏幕大小
local label = cc.Label:createWithTTF("UserDefault test see log", s_arialPath, 28)-- 创建标签
ret:addChild(label, 0)
label:setAnchorPoint(cc.p(0.5, 0.5))
label:setPosition( cc.p(s.width/2, s.height-50) )
ret:addChild(CreateBackMenuItem())
doTest()
return ret
end

日志消息例如以下:

Cocos2d-x 3.2Lua演示样例UserDefaultTest(用户默认配置)的更多相关文章

  1. Cocos2d-x 3.2 Lua演示样例 ClickAndMoveTest(点击移动測试)

    Cocos2d-x 3.2 Lua演示样例 ClickAndMoveTest(点击移动測试)  本篇博客介绍Cocos2d-x 3.2Lua演示样例中点击移动的样例,在这个样例你能够得到怎样创建单点触 ...

  2. Cocos2d-x 3.2 Lua演示样例 XMLHttpRequestTest(Http网络请求)

    Cocos2d-x 3.2 Lua演示样例 XMLHttpRequestTest(Http网络请求)     本篇博客介绍Cocos2d-x 3.2Lua演示样例中的XMLHttpRequestTes ...

  3. MyBatis对数据库的增删改查操作,简单演示样例

    之前一直有用Hibernate进行开发.近期公司在使用Mybatis.依据网上的演示样例,做了一个简单的Demo,以便日后复习 使用XMl方式映射sql语句 整体结构例如以下图 watermark/2 ...

  4. Cocos2d-x-Lua演示样例项目HelloLua

    Cocos2d-x-Lua演示样例项目HelloLua 本篇博客介绍Cocos2d-x中Lua的实例项目,就是使用Cocos2d-x创建的初始项目执行所呈现的农场,这里笔者取名为HelloLua.本篇 ...

  5. Cocos2d-x 3.1.1 Lua演示样例 ActionManagerTest(动作管理)

    Cocos2d-x 3.1.1 Lua演示样例 ActionManagerTest(动作管理) 本篇博客介绍Cocos2d-x的动作管理样例,这个样例展示了Cocos2d-x的几个动作: MoveTo ...

  6. JDBC连接MySQL数据库及演示样例

    JDBC是Sun公司制定的一个能够用Java语言连接数据库的技术. 一.JDBC基础知识         JDBC(Java Data Base Connectivity,java数据库连接)是一种用 ...

  7. java 覆盖hashCode()深入探讨 代码演示样例

    java 翻盖hashCode()深入探讨 代码演示样例 package org.rui.collection2.hashcode; /** * 覆盖hashcode * 设计HashCode时最重要 ...

  8. 模式识别 - 处理多演示样例学习(MIL)特征(matlab)

    处理多演示样例学习(MIL)特征(matlab) 本文地址: http://blog.csdn.net/caroline_wendy/article/details/27206325 多演示样例学习( ...

  9. java并行调度框架封装及演示样例

    參考资料:  阿里巴巴开源项目 CobarClient  源代码实现. 分享作者:闫建忠 分享时间:2014年5月7日 ---------------------------------------- ...

随机推荐

  1. 分布式框架Dubbo入门

    Dubbo简介 Dubbo是一个Alibaba开源额分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案.dubbo就是个服务框架,只有在分布式的时候,才有dubb ...

  2. NFC (Near Filed Communication)

    NFC的用途:近场通信(Near Field Communication,NFC),又称近距离无线通信,是一种短距离的高频无线通信技术,允许电子设备之间进行非接触式点对点数据传输(在十厘米内)交换数据 ...

  3. 使用java生成mapbox-gl可读的vector tile

    概述 mapbox-gl主要数据源来自mapbox vector tile,本文就是要阐述怎样把postgresql中的地理空间数据转换成vector tile,流程图如下: 配置 该工程采用spri ...

  4. VMware14.0.0 版本虚拟机安装Ubuntu16.04 LTS版本Linux系统(多图详细步骤)

    一.前期准备工作 1.成功安装完成VMware14软件: 2.去Ubuntu官网下载Ubuntu16.0.4 LTS 版本的镜像文件. 二.安装步骤 1.打开VMware软件,选择<创建虚拟机& ...

  5. 机器学习,安装python的支持包

    windows10,64位: 以下命令行安装均在python目录下,对应的whl文件也被我拷贝到python目录下: http://www.lfd.uci.edu/~gohlke/pythonlibs ...

  6. Visual Studio 生成DLL文件

    新建一个项目,在菜单栏中选择“项目”/“**属性”选项,该页面中将“输出类型”下拉列表中的选项选择为“类库”,然后重新生成一下该项目,或者在“Visual Studio 2008命令提示”中输入以下命 ...

  7. [转载] Jupiter代码审查工具使用参考

    转载自http://blog.csdn.net/jemlee2002/article/details/5715355 一.       Jupiter 是什么? 这里的 Jupiter 是一个开源的代 ...

  8. pt-online-schema-change和默认值关系

    在使用pt-online-schema-change会遇到如下的错误导致表修改失败: Copying rows caused a MySQL error 1364,Message: Field 'XX ...

  9. Python之元类

    类型对象负责创建对象实例,控制对象行为.那么类型对象又由谁来创建呢? 元类(metaclass)——类型的类型 New-Style Class的默认类型是type >>> class ...

  10. eclipse中hibernate和mybatis中xml配置文件的没有标签提醒解决方法

    当我们使用eclipse编写Mybatis或hibernate的xml文件时,面对众多标签的配置文件,却没有自动提醒,对于工作和学习都十分不方便. 之所以没有自动提醒,是因为dtd文件没有加载成功. ...