如何刪除動畫片段的所有子節點?製作動畫片段刪除它的所有子節點
我試圖
while(radar.numChildren > 0){
radar.removeChildAt(0);
}
,但是這將導致影片剪輯圖形本身被刪除。
如何刪除動畫片段的所有子節點?製作動畫片段刪除它的所有子節點
我試圖
while(radar.numChildren > 0){
radar.removeChildAt(0);
}
,但是這將導致影片剪輯圖形本身被刪除。
如果你只是想而不刪除形狀(圖形)刪除影片剪輯在主影片剪輯(雷達),你可以這樣做:
for (var i : int = radar.numChildren-1 ; i >= 0 ; i--)
{
if(radar.getChildAt(i) is MovieClip)
{
radar.removeChildAt(i);
}
}
function removeChildrenOf(mc:MovieClip):void{
if(my_mc.numChildren!=0){
var k:int = mc.numChildren;
while(k --)
{
mc.removeChildAt(k);
}
}
}
但這會導致的movieclip圖形本身被刪除。
您正在移除它的全部子項DisplayObjects
。您無法刪除所有子對象,也不會丟失「圖形」。
我寫了這個類而回。它創建一個MovieClip內容的位圖快照。刪除所有的孩子,然後將該位圖添加到容器。這個課程/課程的初衷是爲了給你一個平滑渲染的圖像進行重新縮放。在Flash中,如果MovieClip中有圖像並縮小它,則Bitmap可能會失去清晰度。使用BitmapData類的「平滑」屬性(自動設置)將保留完整性。
您只需在圖書館實例中擴展該類,並使用適合您需要的類。
框架(進行中) - https://github.com/charlesclements/as3-tools
類目錄參考 - https://github.com/charlesclements/as3-tools/tree/master/net/charlesclements/gadgets/display
SimpleAutoSmoothMovieClip.as - 這是最容易使用的一個。該類假定所有要捕獲的內容都在(x:0,y:0)註冊點內。從那裏寬度自動計算。
AutoSmoothMovieClip.as - 該類預計那裏是一個孩子的MovieClip一個實例名稱爲「克」包含所有內容,採取的快照。這個「gr」MovieClip將被動態移除。
不,我沒有得到你。 – Benny