I’ve found what calling method setDefaultTouchPriority on any ControlElement is not affecting on touch priority itself.
In the file CCControl.cpp we could find this code
//In the init method
m_nDefaultTouchPriority = 1;
this->setDefaultTouchPriority(m_nDefaultTouchPriority);
//And in the overrided registerWithTouchDispatcher method
CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate(this, kCCMenuHandlerPriority, true);
So in any case we will set the priority of the control equals to 128. Why not doing like this?>setDefaultTouchPriority(m_nDefaultTouchPriority);
<pre>
//In the init method
m_nDefaultTouchPriority = kCCMenuHandlerPriority;
this
//And in the overrided registerWithTouchDispatcher method
CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate(this, nDefaultTouchPriority, true);