cocos2dx学习cocostudio界面交互

1.将demologin直接导出,可以直接放在默认目录下


2.附加库如下


3.HelloWorldScene.h中加入以下头文件

#include "ui/CocosGUI.h"
#include "cocostudio/CocoStudio.h"  
#include "cocostudio/CCSGUIReader.h"
using namespace cocos2d;
using namespace cocostudio;
using namespace cocos2d::ui;
4.HelloWorldScene.cpp中的init加入代码

//界面的导入
	Layout* layout = static_cast<Layout*>(cocostudio::GUIReader::getInstance()->widgetFromJsonFile("LoginWight.ExportJson"));
	addChild(layout);
	//界面事件的结合
	// 获取ui里的button,并添加监听
	btnLogin = (Button*)layout->getChildByName("login_Button_0");
	btnLogin->addTouchEventListener(this, toucheventselector(HelloWorld::buttonEvent));
	btnRegister = (Button*)layout->getChildByName("Register_Button");
	btnRegister->addTouchEventListener(this, toucheventselector(HelloWorld::buttonEvent));
5.按钮事件
<pre name="code" class="cpp">

void HelloWorld::buttonEvent(Ref* obj, TouchEventType eventType)
{
	if (obj==btnLogin)
	{
		BtnEvent(eventType, "Login");
	}
	else if (obj == btnRegister)
	{
		BtnEvent(eventType, "Register");
	}
	
}
void HelloWorld::BtnEvent(TouchEventType eventType, char str[20])
{
	switch (eventType)
	{
	case TouchEventType::TOUCH_EVENT_ENDED:
		CCLOG(str);
		break;
	default:
		break;
	}
}

//只是做一个简单demo,事件处理可以直接在buttonEvent中写


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章