0
我想使用colorTransform方法淡入和淡出对象。淡入对象不起作用 - 帮助
当我将colorTransform应用于我的对象时,它确实会淡化这个东西但不会淡入。 首先,我将bitmapData的alpha设置为0(用于淡入效果)。应用colorTransform后,它什么都不做。没有淡入 否则,当我将bitmapData的alpha设置为100并让它淡出时,它就可以工作。
我不知道错误发生在哪里,有没有人可以帮我解决这个问题?或者你知道另一种实现相同目标的方法吗?非常感谢您的帮助。
BTW:我的对象(tempScore)是没有显示对象。这是blitted在画布上。
这是必须的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的alpha设置为0的代码:
rec = new Rectangle(0, 0, $textWidth, $textHeight);
ct = new ColorTransform();
ct.alphaMultiplier = 0;
tempScore.bitmapData.colorTransform(rec, ct);
OMG!非常感谢你。我不知道。是否有可用的bitmapData的无损滤波器? – drpelz
问题解决。我使用TweenLite并更改了对象。现在这是一个精灵。 TweenLite现在正在运行。 – drpelz