1
내 메인 화면은 Main.ccbi이고 3 개의 CCSprite를 포함합니다. 이제 사용자가 CCSprite를 클릭 할 때 그가 클릭했는지 알아야합니다. CCSprite 사용자가 클릭 한 CCMotionBegin 메소드에서 계산하고 싶습니다.어떤 CCSprite를 클릭했는지 탐지
내 메인 화면은 Main.ccbi이고 3 개의 CCSprite를 포함합니다. 이제 사용자가 CCSprite를 클릭 할 때 그가 클릭했는지 알아야합니다. CCSprite 사용자가 클릭 한 CCMotionBegin 메소드에서 계산하고 싶습니다.어떤 CCSprite를 클릭했는지 탐지
먼저 가게 당신이 CCArray
에서 만든 스프라이트는 mSpriteArray
말 다음이 도움이 다음
bool MyClass :: ccTouchBegan(cocos2d::CCTouch *pTouch, cocos2d::CCEvent *pEvent)
{
CCPoint currentTouchLocation = pTouch->getLocationInView();
currentTouchLocation = CCDirector::sharedDirector()->convertToGL(currentTouchLocation);
currentTouchLocation = this->convertToNodeSpace(currentTouchLocation);
CCSprite *selectedSprite = getSpriteAtPosition(currentTouchLocation);
return true;
}
CCSprite* MyClass :: getSpriteAtPosition(CCPoint inTouchPosition)
{
CCObject *object;
CCARRAY_FOREACH(mSpriteArray, object)
{
CCSprite *sprite = (CCSprite*)sprite;
if (sprite->boundingBox().containsPoint(inTouchPosition))
{
return sprite;
}
}
return NULL;
}
희망 같은 것을 할 수 있습니다.
그래, 고마워! – Zubair