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实战:Lua卷(第2版)的代码,关东升老师的,这里分享出来。除了章节的小示例代码外,还有一个《迷失航线》的游戏示例代码。这是一个下载地址。
lua_c++ 交互原理 cocos2d手动绑定示例 cocos2d自动绑定工具:环境配置,使用详细说明,使用见解 试用于想要了解lua绑定的新人
第1章 Cocos2D-X引擎的介绍 1 1.1 何为游戏引擎 1 1.1.1 游戏的核心—引擎 1 1.1.2 引擎的特点 2 1.1.3 知名的引擎介绍 4 1.1.4 引擎的分类 5 1.2 Cocos2D-X引擎的来历 8 1.3 引擎的版本 9 1.4 下载与安装 10 1.5 ...
cocos2d-x-lua测试案例修复了cocos2d-x LUA示例代码,并使其可以在 Ko, Cocos Code IDE更新中
cocos2d-Lua示例demo源码踩虫子-MOD美国大兵
快速界面控制 快速 cocos2d-x uicontrol 示例
Cocos2d-lua示例(一)排行榜之TableView-附件资源
cocos2dx-lua 自定义事件类
MoonWarriors-lua是为了学习Cocos2d-x Lua开发而移植的Quick-Cocos2d-x版本。移植过程中,体验了一回JS代码到Lua代码的各自语法特性。 1、增加了屏幕分辨率适配。 2、修复了原版本的偶尔屏幕卡顿问题。 界面载图: ...
#cocos2dx 播放视频插件 ##停止维护 貌似看到cocos2dx v3 版已经自带了一个videoplayer, 所以这个就停止维护了! ##特性: lua绑定 播放完成事件回调 支持android, ios平台 ##使用示例: -- 播放完之后的回调函数 local...
入门 运行安装程序脚本,它将自动下载其依赖项 ...SDKBOX示例使用共享的cocos2d-x二进制文件来减少下载 文献资料 有关更多信息,请查看 跑步 在发布模式下编译: cocos run -p android -m release