想做一个类似Android中Toast的效果,即一个小小的提示框,上面写着一些提示语,在屏幕下方淡入,显示1秒,然后淡出,不会对程序产生任何影响,只是让用户看一下。
本来的思路如下:
1,add一个Sprite
2,让这个Sprite执行淡入-延迟-淡出的动画
问题出现了,就是在刚刚add精灵的时候,精灵会显示出来,然后才去执行动画,尽管马上又会隐藏以便做淡入的动作,但是能够被肉眼看出来,效果相当不好。
解决方案:
在没有add这个精灵前先sprite->setVisable(false);
然后在执行动画的时候使用回调函数,顺序如下:
1,sprite淡出,时间为0(为了让这个精灵不可见)
2,sprite调用回调函数,函数的作用是setVisable(true)
3,执行淡入动作序列。
另外,字体其实也是一个Sprite,但他不会产生上述问题,原因不明。