본문 바로가기
프로그래밍/cocos2d-x

cocos2d-x CCUserDefault

by -현's- 2013. 6. 1.
반응형


●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

댓글