ScaleTo的使用
if ( !Layer::init() ) { return false; } Size visibleSize = Director::getInstance()->getVisibleSize(); Vec2 origin = Director::getInstance()->getVisibleOrigin(); Sprite* sprite=Sprite::create("sprite.png"); sprite->setPosition(Point(50,visibleSize.height/2)); this->addChild(sprite); ScaleTo* scaleto=ScaleTo::create(2.8f,0.4f,1.0f); sprite->runAction(scaleto);
ScaleTo的三个参数:
float duration:动作持续时间,单位为秒;
float sx:X方向的拉伸值;
float sy:Y方向的拉伸值。
ScaleBy:
ScaleBy* scaleby=ScaleBy::create(2.8f,1.0f);ScaleBy的意思是在原来倍数的基础上拉伸,比如默认是1.0倍,指定第二个参数为0.4f,则X会拉伸0.4倍。而如果原来是2.0倍,指定第二个参数为0.4f,则X会拉伸0,8倍。这里的拉伸倍数都是以原始大小为基准。
翻牌效果:
第一个精灵初始不拉伸,第二个精灵初始X方向拉伸为0,这样初始时第二个精灵相当于隐藏了。然后,第一个精灵的X方向开始缩小,一直缩小,一直到最后看不见。当第一个精灵的X方向缩小为0倍时,第二个精灵开始X方向的放大,慢慢放大到原始大小。
Blink:
闪烁
Blink* blink=Blink::create(3.0f,5); sprite->runAction(blink);
float durantion:动作持续时间,单位为秒;
int uBlinks:闪烁次数。
原文链接:https://www.f2er.com/cocos2dx/340631.html