Label을 이용한 메뉴 생성하기
MenuItemFont : 폰트 크기나 색생을 직접 지정하지 못함
MenuItemLabel : Label을 이용하여 다양하게 표현 가능
c++)
Label생성 -> Menu Item에 추가 -> Menu에 추가 -> Layer에 추가
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 | #include "test95.hpp" USING_NS_CC; Scene* Test95::createScene() { auto scene = Scene::create(); auto layer = Test95::create(); scene->addChild(layer); return scene; } bool Test95::init() { if ( !Layer::init()) { return false; } //MenuItemFont : 폰트 크기나 색생을 직접 지정하지 못함 //MenuItemLabel : Label을 이용하여 다양하게 표현 가능 auto label1 = Label::createWithSystemFont("Play", "Marker Felt", 30); label1->setColor(Color3B(255, 0, 0)); //글자색상지정 auto label2 = Label::createWithSystemFont("High Scores", "Marker Felt", 30); label2->enableShadow(Color4B::BLUE, Size(2,-2)); //그림자 지정 auto label3 = Label::createWithSystemFont("About", "Marker Felt", 30); label3->enableOutline(Color4B::RED, 2); //외곽선 지정 //Label생성 -> Menu Item에 추가 -> Menu에 추가 -> Layer에 추가 auto item1 = MenuItemLabel::create(label1, CC_CALLBACK_1(Test95::menuCallback, this)); auto item2 = MenuItemLabel::create(label2, CC_CALLBACK_1(Test95::menuCallback, this)); auto item3 = MenuItemLabel::create(label3, CC_CALLBACK_1(Test95::menuCallback, this)); auto menu = Menu::create(item1, item2, item3, NULL); menu->alignItemsVertically(); this->addChild(menu); return true; } //콜백함수 void Test95::menuCallback(Ref* sender){ CCLOG("menu callback"); } | cs |
결과
'IT > - 프로그래밍' 카테고리의 다른 글
Cocos Sprite를 이용한 메뉴 생성하기 (0) | 2017.02.01 |
---|---|
안드로이드 Thread.UncaughtExceptionHandler 사용하여 앱 비정상 종료시 로그출력 예제 (0) | 2017.01.31 |
Cocos 폰트를 이용한 메뉴 생성하기 (0) | 2017.01.26 |
Cocos 이미지를 이용한 메뉴 생성하기 (0) | 2017.01.25 |
코코스 CharMap 폰트 사용하기 (0) | 2017.01.23 |