0
我在Flex中編寫了一個工具,它允許我使用分層位圖設計合成精靈,然後將它們「烘烤」成低開銷的單個bitmapData。我發現了一個奇怪的行爲,我無法解釋:切換圖層的「可見」屬性對於每個圖層都有兩次工作(即,我可以關閉它,然後再次打開),然後不再爲該圖層 - 層從此處保持可見。Flash「可見」問題
如果我覆蓋層上的「設置可見」本身:
override public function set visible(value:Boolean):void
{
if(value == false) this.alpha = 0;
else {this.alpha = 1;}
}
問題就沒有了,我可以切換「知名度」像我想要的。任何想法可能會造成這種情況?
編輯:
下面是使呼叫的代碼:
private function onVisibleChange():void
{
_layer.visible = layerVisible.selected;
changed();
}
的改變()方法 「烘焙」 的位圖:
public function getBaked():BitmapData
{
var w:int = _composite.width + (_atmosphereOuterBlur * 2);
var h:int = _composite.height + (_atmosphereOuterBlur * 2);
var bmpData:BitmapData = new BitmapData(w,h,true,0x00000000);
var matrix:Matrix = new Matrix();
var bounds:Rectangle = this.getBounds(this);
matrix.translate(w/2,h/2);
bmpData.draw(this,matrix,null,null,new Rectangle(0,0,w,h),true);
return bmpData;
}
順便提及,而圖層仍然可見,使用Flex調試器我可以驗證圖層的可見值是否爲「false」。
還請顯示您使用的代碼來切換導致您發出問題的可見性。 – invertedSpear 2010-04-21 23:19:11