auto dispatcher = Director::getInstance()->getEventDispatcher();
//创建一个单点触摸监听器
auto listener = EventListenerTouchOneByOne::create();
//吞噬触摸
listener->setSwallowTouches(true);
//响应touchbegan回调
listener->onTouchBegan = CC_CALLBACK_2(LayerStage::onTouchBegan, this);
listener->onTouchMoved = CC_CALLBACK_2(LayerStage::onTouchMoved,this);
listener->onTouchEnded = CC_CALLBACK_2(LayerStage::onTouchEnded,this);
//将监听器绑定到layer
dispatcher->addEventListenerWithSceneGraphPriority(listener, this);
//创建键盘监听器
auto listenerKey = EventListenerKeyboard::create();
listenerKey->onKeyReleased = CC_CALLBACK_2(LayerStage::onKeyReleased, this);
dispatcher->addEventListenerWithSceneGraphPriority(listenerKey, this);
//返回键
void onKeyReleased(EventKeyboard::KeyCode keycode, Event* event)
{
switch (keycode)
{
case EventKeyboard::KeyCode::KEY_BACKSPACE: //返回键听
{
}
break;
}
}
//触摸函数
bool onTouchBegan(CCTouch *pTouch, CCEvent *pEvent);
void onTouchMoved(CCTouch *pTouch, CCEvent *pEvent);
void onTouchEnded(CCTouch *pTouch, CCEvent *pEvent);