cocostudioを呼び出してシーン内のボタンコントロールを作成する方法

2355 ワード

cocostudioを呼び出してシーン内のボタンコントロールを作成する方法
まずcocostudioを使用して2つのシーンを作成し、そのうちの1つにcocostudioを使用して作成したuiボタンコントロールを追加します.次のインスタンスコードは、最初のシーンのボタンを使用して別のシーンに切り替える方法を教えてくれます.
[cpp] view plain copy print ?
cocostudioを呼び出してシーン内のボタンコントロールを作成する方法
  •    cocos2d::gui::TouchGroup* touchGroup = static_cast(render->getNode());  

  •     UIWidget* widget = static_cast(touchGroup->getWidgetByName("Panel_20"));  
  •     UIButton* button = static_cast(widget->getChildByName("Button_24"));  

  • //ボタンにタッチイベントを追加する
  •     button->addTouchEventListener(this, toucheventselector(MenuScene::touchEvent));  

  •   
  •     return pNode;  

  • }  
    cocos2d::CCNode* MenuScene::createGameScene()
    {
    	CCNode *pNode = SceneReader::sharedSceneReader()->createNodeWithSceneFile("yourJson.json");//       
    	if (pNode == NULL)
    	{
    		return NULL;
    	}
    	_node = pNode;
    
            //      ui    
    	CCComRender *render = static_cast<CCComRender*>(_node->getChildByTag(10013)->getComponent("GUIComponent"));
    	cocos2d::gui::TouchGroup* touchGroup = static_cast<cocos2d::gui::TouchGroup*>(render->getNode());
    	UIWidget* widget = static_cast<UIWidget*>(touchGroup->getWidgetByName("Panel_20"));
    	UIButton* button = static_cast<UIButton*>(widget->getChildByName("Button_24"));
            //         
    	button->addTouchEventListener(this, toucheventselector(MenuScene::touchEvent));
    
    	return pNode;
    }

    ボタンをクリックすると、次のようになります.
    [cpp] view plain copy print ?
    void MenuScene::touchEvent(CCObject *pSender, TouchEventType type)  
  • {  

  • CCScene*pScene=GetReadyScene::scene();//切り替えが必要なシーンオブジェクトを作成する
  •     CCDirector::sharedDirector()->replaceScene(pScene);  

  • }  
    void MenuScene::touchEvent(CCObject *pSender, TouchEventType type)
    {
    	CCScene *pScene = GetReadyScene::scene();//            
    	CCDirector::sharedDirector()->replaceScene(pScene);
    }

    はい、so easyです.これもTestCppの参考から直接持ってきたものです.今はネット上の資料が比較的少ないので、知らないときは実例を参考にしてください.以上のコードの使用前提はcocostudioの使用に対して一定の熟知があることであり、いくつかのロードされたヘッダファイルもusing namespace XXXの追加に注意しなければならない.