我正在使用For StatementHaxe和OpenFL 的时钟,为Bitmap对象创建淡入和淡出效果(使用alpha属性).你有没有使用其他方法?我正在使用一个For语句,而不是Sys.sleep(0.2);因为它使一个"加载"光标图标,程序卡住了.调用位图bmp,定时器为tmrSplash.
资源:
tmrSplash.run = function changeAlpha(): Void {
var f: Float = 1;
while (f <= 1 && f >= 0) {
bmp.alpha = f;
var a: Int = 0;
while (a < 500000000) {
a++;
if (a >= 500000000) {
a = 0;
}
f -= 0.0005;
trace(f);
}
tmrSplash.stop();
}
}
Run Code Online (Sandbox Code Playgroud)
谢谢.
为了手动淡出,您需要ENTER_FRAME在舞台上监听事件并随时更改值,而不是创建此无限循环.
但我建议你看一下补间引擎,比如Actuate,它简化了语法.你不想自己创建这样的东西,只需使用库来动画属性.https://github.com/openfl/actuate
Actuate.tween (mySprite, 1, { alpha: 0 }); // fade out
Run Code Online (Sandbox Code Playgroud)
生命太短暂,无法创造另一个补间引擎,不要浪费你的时间来建造这样的.