我是用回调函数来重新生成一个空场景 然后加层的
CCScene *scene1 = HelloWorld::scene();
//
CCDirector::sharedDirector()->replaceScene(scene1);
但是切换后,点击屏幕touch事件直接崩。跳到了CCTouchDispathcer.
Touch事件在init里面注册过了。他崩的地方好像是多点触控 (我也不太懂- -)
我是用回调函数来重新生成一个空场景 然后加层的
CCScene *scene1 = HelloWorld::scene();
//
CCDirector::sharedDirector()->replaceScene(scene1);
但是切换后,点击屏幕touch事件直接崩。跳到了CCTouchDispathcer.
Touch事件在init里面注册过了。他崩的地方好像是多点触控 (我也不太懂- -)
= =求解啊。。。
解决不了。。。。。崩了之后跳的位置是
void CCTouchDispatcher::touchesBegan(CCSet *touches, CCEvent *pEvent)
{
if (m_bDispatchEvents)
{
this->touches(touches, pEvent, CCTOUCHBEGAN);
}
}
但是我没有用TouchesBegan啊 我用的是TouchBegan = =
Touch事件在init里面注册过了。他崩的地方好像是多点触控 (我也不太懂- -)
可能是这里的问题,不要在init里面注册,你重写一下registerWithTouchDispatcher(),然后再在init()里面调用一下setTouchEnabled(true)试试。
void XXXLayer::registerWithTouchDispatcher() {
CCLayerColor::registerWithTouchDispatcher();
CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate(this, kCCMenuHandlerPriority, true);
}
试了一下,还是那个问题。因为我点击重新开始按钮的时候第一个层的touch事件已经被我remove掉了 然后点击重新开始后又跳到init里面创建场景 然后注册touch事件 然后点击就崩。。。
已经解决,表示非常的蛋疼- -,所有的touch事件不用了之后要记得remove掉 要不然会发生各种奇怪的事情 对于我这种新手来说简直致命啊- -




