纠结的removeFromParentAndCleanup

不知道大家遇到这样的问题没有,就是当一个被添加了触摸响应CCSprite(如class mySprite:public cocos2d::CCSprite,public cocos2d::CCTouchDelegate)添加到一个layer上在移除它(removeFromParentAndCleanup)结果在画面上消失了,但是点击它(它原来在的位置)还是可以点击的,并触发响应的函数。
请问这个问题何解?我想这应该是个常见的问题吧,是不是要手动在CCTouchDispatch::shardDispather中移除啊,但是我想既然可以触摸它就说明他还在,难道removeFromParentAndCleanup只是把它隐藏了吗,有没有哪位大神能帮我分析一下。

构造时往CCTouchDispatcher。。。addXXXDelegate(this),通常在init()做
析构时就从CCTouchDispatcher。。。removeDelegate(this),通常在onExit()做

感谢,楼上正解~

构造时往CCTouchDispatcher。。。addXXXDelegate(this),通常在init()做
析构时就从CCTouchDispatcher。。。removeDelegate(this),通常在onExit()做

楼主看看 你的onExit(),是不是忘了调用UIlayer::onexit()