// on "init" you need to initialize your instance bool GameScene::init() { if ( !CCLayer::init() ) { return false; } // 背景画像を設定する setBackGroundSprite(); CCSize visibleSize = CCDirector::sharedDirector()->getVisibleSize(); CCPoint origin = CCDirector::sharedDirector()->getVisibleOrigin(); CCMenuItemImage *pCloseItem = CCMenuItemImage::create( "CloseNormal.png", "CloseSelected.png", this, menu_selector(GameScene::menuCloseCallback)); pCloseItem->setPosition(ccp(origin.x + visibleSize.width - pCloseItem->getContentSize().width/2 , origin.y + pCloseItem->getContentSize().height/2)); CCMenu* pMenuClose = CCMenu::create(pCloseItem, NULL); pMenuClose->setPosition(CCPointZero); this->addChild(pMenuClose, 1); CCLabelTTF* pLabel = CCLabelTTF::create("GameScene", "Arial", 24); pLabel->setColor(ccc3((GLubyte)0,(GLubyte)0,(GLubyte)0)); pLabel->setPosition(ccp(origin.x + visibleSize.width/2, origin.y + visibleSize.height - pLabel->getContentSize().height)); this->addChild(pLabel, 1); // 線引きのガイダンスを表示 int fontSize = CCEGLView::sharedOpenGLView()->getDesignResolutionSize().height/320.0f * 18; CCLabelTTF *label = CCLabelTTF::create("指でなぞったラインを CCMotionStreak で描画します", "Helvetica", /*fontSize*/ 24); label->setColor(ccc3((GLubyte)0,(GLubyte)0,(GLubyte)0)); label->setPosition(ccp(visibleSize.width / 2, visibleSize.height - label->getContentSize().height * 4)); this->addChild(label); this->setTouchEnabled(true); // タッチイベントを有効化 this->setTouchMode(kCCTouchesOneByOne); // シングルタッチ // CCSprite* pSprite = CCSprite::create("HelloWorld.png"); // pSprite->setPosition(ccp(visibleSize.width/2 + origin.x, visibleSize.height/2 + origin.y)); // this->addChild(pSprite, 0); // 次の画面へ遷移するボタン CCMenuItemImage *pNextItem = CCMenuItemImage::create( "HelloWorld.png", "HelloWorld_02.png", this, menu_selector(GameScene::buttonOnClickCallBack)); pNextItem->setPosition(ccp(visibleSize.width/2 + origin.x, visibleSize.height/2 + origin.y)); CCMenu* pMenuNext = CCMenu::create(pNextItem, NULL); pMenuNext->setPosition(CCPointZero); this->addChild(pMenuNext, 0); return true; }
bool CCControlBase::initWithBackGroundSprite( CCScale9Sprite* backgroundSprite ) { bool initialized(SLBaseClass::init()); if(initialized) { if(backgroundSprite != nullptr) { setBackGroundSprite(backgroundSprite); addChild(backgroundSprite,-1); } addSubLayerContent(); needsLayout(); } return initialized; }
CCControlBase::~CCControlBase() { setBackGroundSprite(nullptr); setDataSource(nullptr); CC_SAFE_RELEASE_NULL(_valueKey); }