ActionScripts 3 如何 replace/swap 舞台内的图像?
ActionScripts 3 How to replace/swap an image inside a stage?
我在 Animate CC 的舞台上有一些 PNG 图像,如何 change/swap 一个图像与另一个 PNG 一起使用代码导入到库中?
要从库中添加图像,您需要为该图像设置 AS3 class(设为 image.flame),然后
import image.flame;
import flash.display.Bitmap;
import flash.display.BitmapData;
var aRaster:BitmapData = new image.flame();
var aBitmap:Bitmap = new Bitmap(aRaster);
aBitmap.name = "Flame";
addChild(aBitmap);
删除可能有点棘手。
1) 如果 Animate CC 允许命名位图实例,那么您很幸运,可以直接命名它(例如 Flame),然后:
removeChild(getChildByName("Flame"));
1.1) 您还可以用 MovieClip 包装该位图并为其指定一个适当的名称。我认为这是最靠谱的方法。
2) 如果 Animate CC 不允许命名位图,就像我的 CS6 不允许,那么你只有几个选择。
2.1) 如果您的位图是其容器中唯一的 child,只需使用
将其删除
removeChildAt(0);
2.2) 如果是其他一些内容中唯一的位图,可以找到并删除:
for (var i:int = 0; i < numChildren; i ++)
{
var aChild:Bitmap = getChildAt(i) as Bitmap;
if (aChild)
{
removeChild(aChild);
break;
}
}
2.3) 如果该位图是众多位图之一,并且此容器中还有其他内容,那么...猜测其深度并 removeChildAt(...) 它,或选择选项 #1.1 并用 MovieClip 包装该位图,使其具有实例名称并可用于删除。
P.S。顺便提一下,在 CS6 之前,我记得 Flash 将位图 (Bitmap class) 转换为 bitmap-filled 形状 (Shape class),所以 #1.1 无论如何都是你最好的朋友。
我在 Animate CC 的舞台上有一些 PNG 图像,如何 change/swap 一个图像与另一个 PNG 一起使用代码导入到库中?
要从库中添加图像,您需要为该图像设置 AS3 class(设为 image.flame),然后
import image.flame;
import flash.display.Bitmap;
import flash.display.BitmapData;
var aRaster:BitmapData = new image.flame();
var aBitmap:Bitmap = new Bitmap(aRaster);
aBitmap.name = "Flame";
addChild(aBitmap);
删除可能有点棘手。
1) 如果 Animate CC 允许命名位图实例,那么您很幸运,可以直接命名它(例如 Flame),然后:
removeChild(getChildByName("Flame"));
1.1) 您还可以用 MovieClip 包装该位图并为其指定一个适当的名称。我认为这是最靠谱的方法。
2) 如果 Animate CC 不允许命名位图,就像我的 CS6 不允许,那么你只有几个选择。
2.1) 如果您的位图是其容器中唯一的 child,只需使用
将其删除removeChildAt(0);
2.2) 如果是其他一些内容中唯一的位图,可以找到并删除:
for (var i:int = 0; i < numChildren; i ++)
{
var aChild:Bitmap = getChildAt(i) as Bitmap;
if (aChild)
{
removeChild(aChild);
break;
}
}
2.3) 如果该位图是众多位图之一,并且此容器中还有其他内容,那么...猜测其深度并 removeChildAt(...) 它,或选择选项 #1.1 并用 MovieClip 包装该位图,使其具有实例名称并可用于删除。
P.S。顺便提一下,在 CS6 之前,我记得 Flash 将位图 (Bitmap class) 转换为 bitmap-filled 形状 (Shape class),所以 #1.1 无论如何都是你最好的朋友。