首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Cocos2dx在Iphone6仿真器中使用callfuncND的崩溃

Cocos2dx在Iphone6仿真器中使用callfuncND的崩溃
EN

Stack Overflow用户
提问于 2016-01-14 06:26:51
回答 1查看 44关注 0票数 0

我使用cocos2dx 3.9,但代码在Iphone6模拟器中崩溃,但在Iphone4s模拟器中正确运行

代码语言:javascript
复制
void BattleHeroIconCSBLayer::doEffectValue4(CCNode *node)
{
    CCCallFuncND *remove = CCCallFuncND::create(node, callfuncND_selector(BattleHeroIconCSBLayer::effectNodeCallBack4), (void*)0);
    auto *seq1 = CCSequence::create(MoveBy::create(1.0, ccp(width - node->getContentSize().width, 0)), remove, NULL);
    auto *seq2 = CCSequence::create(FadeIn::create(0.3), DelayTime::create(0.4), FadeOut::create(0.3), NULL);
    auto *spawn = Spawn::create(seq1, seq2, NULL);
    node->runAction(spawn);
}

在BattleHeroIconCSBLayer::effectNodeCallBack4 4中,我确实喜欢这样:

代码语言:javascript
复制
void BattleHeroIconCSBLayer::effectNodeCallBack4(CCNode* pTarget, void* data)
{
    mBuffBack->setVisible(false);
    pTarget->removeFromParentAndCleanup(true);
}

mBuffBack是我的成员变量,我从cocostudio获得它:

代码语言:javascript
复制
mBuffBack = static_cast<Sprite*>(node->getChildByName("mBuffBack"));

但我住进去了

代码语言:javascript
复制
mBuffBack->setVisible(false);

使用iphone6仿真器;

有人能帮我吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-01-14 08:32:08

根据建议,我使用以下代码

代码语言:javascript
复制
auto remove = CallFunc::create( CC_CALLBACK_0(BattleHeroIconCSBLayer::effectNodeCallBack4, this, node, (void*)0));

代替

代码语言:javascript
复制
CCCallFuncND *remove = CCCallFuncND::create(node, callfuncND_selector(BattleHeroIconCSBLayer::effectNodeCallBack4), (void*)0);

它运行正常,但我不知道为什么;

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34782976

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档