第三次的动画并没有出现,就已经开始执行removechild和clear的内容 。。。。
auto iceBtn = dynamic_cast<Button*>(_layout->getChildByName(“iceBtn”));
iceBtn->addTouchEventListener(=](Ref* pSender, Widget::TouchEventType type)
{
if(type == Widget::TouchEventType::ENDED)
{
//MessageBox(“aaaa”,“alert”);
Vec2 pos = iceBtn->getPosition();//获取按钮坐标
auto iceSprite = Sprite::create(“ice.png”);
iceSprite->setPosition(pos);//让精灵出现在按钮位置
_layout->addChild(iceSprite);
auto moveTo = MoveTo::create(0.5, skillPos(_skillsVector.size()));//根据返回的坐标创建action
iceSprite->runAction(moveTo);
_skillsVector.pushBack(iceSprite);//将精灵存入数组
if(_skillsVector.size() == 3)
{
//遍历集合,removechild集合元素 且 clear集合
}
}
});
Vec2 SkillsScene::skillPos(int size)
{
Vec2 pos;
switch (size)
{
case 0:
pos.x = _pos1X;
pos.y = _pos1Y;
break;
case 1:
pos.x = _pos2X;
pos.y = _pos2Y;
break;
case 2:
pos.x = _pos3X;
pos.y = _pos3Y;
break;
default:
break;
}
return pos;
}