如果我使用皮膚按鈕並使用AS3 graphice.clear()和graphics.lineTo和beginFill創建一個形狀,該按鈕與容器中的其他項目重疊。<s:Line>和graphics.lineTo()之間的區別
當我使用和mxml創建相同的形狀時,按鈕整齊地放置在容器內。
這是爲什麼?
如果我使用皮膚按鈕並使用AS3 graphice.clear()和graphics.lineTo和beginFill創建一個形狀,該按鈕與容器中的其他項目重疊。<s:Line>和graphics.lineTo()之間的區別
當我使用和mxml創建相同的形狀時,按鈕整齊地放置在容器內。
這是爲什麼?
因爲線對象正在做一堆檢查和額外的工作,您在使用圖形對象時沒有這樣做。看看spark.primitives.Line的代碼,看看它在做什麼,你不是。
這可能是因爲Flex無法計算動態繪製按鈕的大小,而MXML版本允許在顯示之前計算大小。您可能需要重寫度量方法來計算寬度/高度。如果這不是問題,那麼發佈一些代碼,以便我們仔細觀察。希望有所幫助。