bool WHScrollView::onTouchBegan(cocos2d::Touch *pTouch, cocos2d::Event *pEvent) { CCPoint localPoint = convertTouchToNodeSpace(pTouch); CCRect rect = CCRectMake(0, 0, _viewSize.width, _viewSize.height); if (!rect.containsPoint(localPoint)) return false; if (!ScrollView::onTouchBegan(pTouch, pEvent)) return false; if (m_PointerId != -1) return false; m_BeginPoint = localPoint; m_PointerId = pTouch->getID(); //CCScrollView::ccTouchBegan(pTouch, pEvent); m_MoveCount = 1; for (int i = 0; i < m_TouchLayer.size(); i++) { CCLayer* pTouchLayer = m_TouchLayer[i]; m_TouchLayerTouched[i] = pTouchLayer->onTouchBegan(pTouch, pEvent); if (m_TouchLayerTouched[i]) break; } return true; }