http://cn.cocos2d-x.org/tutorial/show?id=1704
UserDefault数据持久化实例:保存背景音乐和音效设置
flush
/flʌʃ/
冲刷, 清除
HelloWorldScene.h
Size
size;
void menuCallback(cocos2d::Ref* pSender);
HelloWorldScene.cpp
size
=
Director
::
getInstance
()->
getWinSize
();
bool m_bool = UserDefault :: getInstance ()-> getBoolForKey ( "bool" , false );
CCLOG ( "%s" ,m_bool? "true" : "false" );
int m_int = UserDefault :: getInstance ()-> getIntegerForKey ( "integer" , 0 );
CCLOG ( "%d" ,m_int);
float m_float = UserDefault :: getInstance ()-> getFloatForKey ( "float" , 0.0f );
CCLOG ( "%f" ,m_float);
double m_double = UserDefault :: getInstance ()-> getDoubleForKey ( "double" , 0.0 );
CCLOG ( "m_double : %lf" ,m_double);
std :: string str = UserDefault :: getInstance ()-> getStringForKey ( "string" , "null" );
bool m_bool = UserDefault :: getInstance ()-> getBoolForKey ( "bool" , false );
CCLOG ( "%s" ,m_bool? "true" : "false" );
int m_int = UserDefault :: getInstance ()-> getIntegerForKey ( "integer" , 0 );
CCLOG ( "%d" ,m_int);
float m_float = UserDefault :: getInstance ()-> getFloatForKey ( "float" , 0.0f );
CCLOG ( "%f" ,m_float);
double m_double = UserDefault :: getInstance ()-> getDoubleForKey ( "double" , 0.0 );
CCLOG ( "m_double : %lf" ,m_double);
std :: string str = UserDefault :: getInstance ()-> getStringForKey ( "string" , "null" );
CCLOG("%s",str.c_str());
//
create方法过时
auto
item =
MenuItemFont
::
create
(
"click"
,
this
,
menu_selector
(
HelloWorld
::
menuCallback
));
item-> setPosition ( size / 2 );
auto menu = Menu :: create (item, NULL );
menu-> setPosition ( Vec2 :: ZERO );
item-> setPosition ( size / 2 );
auto menu = Menu :: create (item, NULL );
menu-> setPosition ( Vec2 :: ZERO );
addChild(menu);
void
HelloWorld
::menuCallback(
cocos2d
::
Ref
* pSender){
UserDefault :: getInstance ()-> setBoolForKey ( "bool" , true );
UserDefault :: getInstance ()-> setIntegerForKey ( "integer" , 123 );
UserDefault :: getInstance ()-> setFloatForKey ( "float" , 4.56f );
UserDefault :: getInstance ()-> setDoubleForKey ( "double" , 7.89 );
UserDefault :: getInstance ()-> setStringForKey ( "string" , "hello" );
// 保存数据
UserDefault :: getInstance ()-> flush ();
UserDefault :: getInstance ()-> setBoolForKey ( "bool" , true );
UserDefault :: getInstance ()-> setIntegerForKey ( "integer" , 123 );
UserDefault :: getInstance ()-> setFloatForKey ( "float" , 4.56f );
UserDefault :: getInstance ()-> setDoubleForKey ( "double" , 7.89 );
UserDefault :: getInstance ()-> setStringForKey ( "string" , "hello" );
// 保存数据
UserDefault :: getInstance ()-> flush ();
}