●CCUserDefault
- 환경설정이나 점수등을 저장하는 등 데이터를 저장할 때 사용한다.
ios의 NSUserDefault, 안드로이드의 SharedPreferences와 비슷하다.
●String형 저장, 불러오기
- 저장
CCUserDefault::sharedUserDefault()->setStringForKey("string", "aa"); //(이름, 값)
- 불러오기
std::string s = CCUserDefault::sharedUserDefault()->getStringForKey("string");
●Interger형 저장, 불러오기
- 저장
CCUserDefault::sharedUserDefault()->setIntegerForKey("integer", 1);
- 불러오기
int i = CCUserDefault::sharedUserDefault()->getIntegerForKey("integer");
●Float형 저장, 불러오기
- 저장
CCUserDefault::sharedUserDefault()->setFloatForKey("float", 1.2f);
- 불러오기
float f = CCUserDefault::sharedUserDefault()->getFloatForKey("float");
●Double형 저장, 불러오기
- 저장
CCUserDefault::sharedUserDefault()->setDoubletForKey("double", 1.2);
- 불러오기
double d = CCUserDefault::sharedUserDefault()->getDoubleForKey("double");
●Bool형 저장, 불러오기
- 저장
CCUserDefault::sharedUserDefault()->setBooltForKey("bool", true);
- 불러오기
Bool b = CCUserDefault::sharedUserDefault()->getBoolForKey("bool");
●예제
- HelloWorldScene.h
#ifndef __HELLOWORLD_SCENE_H__ #define __HELLOWORLD_SCENE_H__ #include "cocos2d.h" class HelloWorld : public cocos2d::CCLayerColor { public: virtual bool init(); static cocos2d::CCScene* scene();
CREATE_FUNC(HelloWorld);
}; #endif // __HELLOWORLD_SCENE_H__ |
- HelloWorldScene.cpp
#include "HelloWorldScene.h" using namespace cocos2d; CCScene* HelloWorld::scene() { CCScene *scene = CCScene::create();
HelloWorld *layer = HelloWorld::create(); scene->addChild(layer); return scene; } bool HelloWorld::init() { if ( !CCLayerColor::initWithColor(ccc4(255, 255, 255, 255)) ) { return false; } /////////////////////////////
CCUserDefault::sharedUserDefault()->setStringForKey("string", "value1"); CCUserDefault::sharedUserDefault()->setFloatForKey("float", 1.1f); CCUserDefault::sharedUserDefault()->setIntegerForKey("integer", 1); CCUserDefault::sharedUserDefault()->setDoubleForKey("double", 5.5); CCUserDefault::sharedUserDefault()->setBoolForKey("bool", "true"); CCUserDefault::sharedUserDefault()->flush(); ////////////////////////////
std::string s = CCUserDefault::sharedUserDefault()->getStringForKey("string"); CCLog(s.c_str());
int i = CCUserDefault::sharedUserDefault()->getIntegerForKey("integer"); CCLog("%d",i);
float f = CCUserDefault::sharedUserDefault()->getFloatForKey("float"); CCLog("%f",f);
double d = CCUserDefault::sharedUserDefault()->getDoubleForKey("double"); CCLog("%f",f);
bool b = CCUserDefault::sharedUserDefault()->getBoolForKey("bool"); if(b) { CCLog("true"); }else { CCLog("false"); }
return true; } |
'프로그래밍 > cocos2d-x' 카테고리의 다른 글
cocos2d-x warning error C2360 (1) | 2013.06.03 |
---|---|
cocos2d-x 패럴렉스노드(ParallaxNode) (0) | 2013.06.02 |
cocos2d-x 스케줄 (0) | 2013.06.01 |
cocos2d-x 터치(Touch) (0) | 2013.06.01 |
cocos2d-x 심플오디오엔진(SimpleAudioEngine) (0) | 2013.05.31 |
댓글