cocos2dx 중 std::function 사용
8801 단어 게임 개발
// ALyer , BLayer ASprite
bool ALyer::init()
{
if ( !Scene::init() )
{
return false;
}
auto visibleSize = Director::getInstance()->getVisibleSize();
Vec2 origin = Director::getInstance()->getVisibleOrigin();
m_pLogo = Sprite::create("zuoqi_head_5.png");
m_pLogo->setScale(3);
m_pLogo->setPosition(Vec2(origin.x + visibleSize.width/2,origin.y + visibleSize.height/3*2));// - m_pLogo->getContentSize().height));
this->addChild(m_pLogo);
m_pBLayer = BLayer::create();
this->addChild(m_pBLayer,1);
// ALayer BLayer, BLayer ALyer
m_pALayer->SetClickCallBack(CC_CALLBACK_0(HelloWorld::ChangeSprite,this));
return true;
}
void ALyer::ChangeSprite()
{
m_pLogo->initWithFile("zuoqi_head_19.png");
}
BLayer.h
class BLayer:public cocos2d::Layer
{
public:
static ALayer* create();
// ALayer
typedef std::function<void()> ccCallByHelloword;
void SetClickCallBack(ccCallByHelloword callback)
{
// ALyer
m_callback =callback;
}
private:
bool init();
//
void ButtonCallback(cocos2d::Ref* pSender);
ccCallByHelloword m_callback;
};
BLayer.cpp
void BLayer::ButtonCallback(Ref* pSender)
{
m_callback();
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
게임 만들기 : 구현 된 헥스 맵 좌표계 구조구현해 본 결과, Hex의 좌표계는 교대로 어긋나는 형태가 좋다 헥스의 줄은 가로 일직선이 좋다 헥스를 세로로 잡아 보았다 구현 내용은 . 그리고, 날아다니는 좌표계가 좋을 것이라고, 썼습니다만, 실장해 보면 취급하...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.