Я хотел бы постепенно увеличивать и уменьшать объект с помощью метода colorTransform.
Когда я применяю colorTransform к своему объекту, он постепенно исчезает, но не исчезает. Сначала я устанавливаю альфаот bitmapData до 0 (для эффекта затухания).После применения colorTransform он ничего не делает.Никакого исчезновения. В противном случае, когда я устанавливаю альфа-значение bitmapData равным 100 и позволяю ему исчезать, это работает.
Я не знаю, где может быть ошибка, поэтому есть кто-нибудь, кто может помочь мне с этой проблемой?Или вы знаете другой способ достижения той же цели?Большое спасибо за вашу помощь.
Кстати: мой объект (tempScore) не является экранным объектом.Он скрыт на холсте.
Это функция, которая будет colorTransform моего объекта:
private function setAlpha(setMode:int, bmd:BitmapData):BitmapData
{
var rec:Rectangle = new Rectangle(0, 0, bmd.width, bmd.height);
var ct:ColorTransform = new ColorTransform();
if (setMode == 1) {
ct.alphaMultiplier = .95;
} else if (setMode == 2) {
ct.alphaMultiplier = 1.05;
} else if (setMode == 3) {
ct.alphaMultiplier = 0;
} else if (setMode == 4) {
ct.alphaMultiplier = .5;
} else if (setMode == 5) {
ct.alphaMultiplier = 1;
}
bmd.colorTransform(rec, ct);
return bmd;
}
Это код, где я хотел бы изменить альфа, но затуханиене работает:
setAlpha(2, tempScore.bitmapData);
Это код, в котором я установил альфа для bitmapData равным 0:
rec = new Rectangle(0, 0, $textWidth, $textHeight);
ct = new ColorTransform();
ct.alphaMultiplier = 0;
tempScore.bitmapData.colorTransform(rec, ct);