cocos2dx自學之 事件監聽

2021-07-03 23:31:40 字數 1590 閱讀 6665

auto label = labelttf::create("click me!","courier",30);

label->setposition(visiblesize.width/2,visiblesize.height/2);

addchild(label);

auto listener = eventlistenertouchonebyone::create(); //建立***

listener->ontouchbegan = (touch *touch,event *event)

return true; //返回true才能出發事件傳遞

}; //事件傳遞

listener->ontouchmoved = (touch* touch,event *event);

director::getinstance()->geteventdispatcher()->addeventlistenerwithscenegraphpriority(listener,label); //繫結監聽事件 */

//多點觸控*********************************************

/*auto listener = eventlistenertouchallatonce::create();

listener->ontouchesbegan = (std::vectort,event *event);

listener->ontouchesmoved = (std::vectort,event *event);

director::getinstance()->geteventdispatcher()->addeventlistenerwithscenegraphpriority(listener,this); */

/**************************** 感測器 *****************************************/

/*device::setaccelerometerenabled(true);//開啟感測器偵聽 感測器=重力感應?

auto listener = eventlisteneracceleration::create((acceleration *a,event *event));

director::getinstance()->geteventdispatcher()->addeventlistenerwithscenegraphpriority(listener,this);*/

/************************** 按鍵監聽 ************************************/

/*auto listener = eventlistenerkeyboard::create();

listener->onkeyreleased = (eventkeyboard::keycode code,event *venet)

}; director::getinstance()->geteventdispatcher()->addeventlistenerwithscenegraphpriority(listener,this);

Cocos2d x之事件分發機制

eventdispatch事件分發是響應使用者事件的機制,基本組成 事件 封裝了我們事件的處理 事件分發器通知使用者事件的 事件物件包含事件的資訊 有五種事件 eventlistenertouch 響應touch觸控事件 eventlistenerkeyboard 響應鍵盤事件 eventliste...

cocos2d x註冊touch事件

cocos2d x註冊touch事件 之前在寫cocos2d專案時,一般註冊touch事件都是在init 方法中或onenter 方法中,例如 bool gamelayer init ccdirector shareddirector gettouchdispatcher addtargetedde...

cocos2dx事件分發機制

事件型別 enum class type 事件 型別 enum class type 關於事件 的優先權通過 addeventlistenerwithscenegraphpriority 新增的 優先權為0。通過 addeventlistenerwithfixedpriority 新增的 可以自定義...