九宫格CCScale9Sprite的使用二



auto wSize = Director::getInstance()->getOpenGLView();
 auto moveTo = MoveBy::create(1.0f,Vec2(30,0));
 auto moveBack = moveTo->reverse();
 auto ratateBy = RotateBy::create(1.0f,180);
 auto fadeOut = FadeOut::create(2.0f);
 auto scaleTo = ScaleTo::create(1.0,2.0);
 auto action = Sequence::create(moveTo,moveBack,fadeOut,scaleTo,NULL);

 Sprite* normalSprite1 = Sprite::create("animationbuttonnormal.png");
 normalSprite1->setPosition(100,100);
 normalSprite1->setCascadeColorEnabled(true);
 normalSprite1->setCascadeOpacityEnabled(true);
 //当setCascadeOpacityEnabled为true时,子Sprite设置Opacity的时候会参考父Sprite的Opacity值做处理;
 //而设置父Sprite的Opacity值时,也同时会更新子Sprite的Opacity显示。起到了透明设置的传递作用。所以之前的每帧更新的代码就可以删掉了,省不少事。
 //同理,还有个函数setCascadeColorEnabled相当于传递了颜色设置的作用.
 normalSprite1->setColor(Color3B::GREEN);
 this->addChild(normalSprite1);
 normalSprite1->runAction((FiniteTimeAction*)action->clone());

 ui::Scale9Sprite *normalSprite2 = ui::Scale9Sprite::create("animationbuttonnormal.png");
 normalSprite2->setScale9Enabled(false);//是否启用九宫格显示模式
 normalSprite2->setOpacity(100);
 normalSprite1->addChild(normalSprite2);

 auto action2 = action->clone();
 ui::Scale9Sprite *sp1 = ui::Scale9Sprite::create("animationbuttonnormal.png");
 sp1->setPosition(200, 260);
 sp1->setScale(1.2f);
 sp1->setContentSize(Size(100, 100));
 sp1->setColor(Color3B::GREEN);
 this->addChild(sp1);
 sp1->runAction((FiniteTimeAction*)action2);

 cocos2d::ui::Scale9Sprite *sp2 = ui::Scale9Sprite::create("animationbuttonnormal.png");
 sp2->setPreferredSize(sp1->getContentSize() * 1.2f);
 sp2->setColor(Color3B::GREEN);
 sp2->setFlippedX(true);
 sp2->setContentSize(Size(100, 100));

 sp1->addChild(sp2);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值