我需要将精灵的高度精确地缩放到固定值。我不认为scaleBy()或scaleTo()函数可以提供帮助。请帮我解决一下。
答案 0 :(得分:2)
每个CCSprite对象都具有scale,scaleX和scaleY的属性。在您的情况下,您应该使用scaleY属性并执行一些简单的数学运算:
sprite.scaleY = DESIRED_HEIGHT/sprite.contentSize.height;
但是你必须确保你想要的高度是漂浮的,否则你可能会遇到一些问题,比如总是有0或1!
如果要为其设置动画,您还可以使用CCScaleTo操作:
float scaleY = DESIRED_HEIGHT/sprite.contentSize.height;
[sprite runAction:[CCScaleTo actionWithDuration:duration scaleX:sprite.scaleX scaleY:scaleY]];
希望这有帮助!