我在actionscritpt中創建了一個擴展spark.components.Button的類,因爲我將在運行時加載一堆按鈕。我有一個SkinnableContainer.mxml文件,它將加載spark按鈕。當我在該mxml文件中使用addElement()方法時,我的按鈕的自定義外觀沒有顯示。按鈕外觀不顯示與addElement();
//in the SkinnableContainer.mxml file
public function displayButton(button:Button):void
{
addElement(button);
}
但是如果在同一SkinnableContainer.mxml文件我通過
<mybuttons:CustomButton x="73" y="4"/>
拖放到皮膚顯示就好了。
我想也許因爲正在添加的按鈕,我已經叫loadStyleDeclarations後,這可能是問題,所以我叫
styleManager.loadStyleDeclarations(skin, true, true, ApplicationDomain.currentDomain);
後,我添加的按鈕元素和按鈕仍然沒有皮膚。
任何想法?
在你有你的參數類型爲一個按鈕,而不是一個的CustomButton的displayButton方法適用於你的皮膚傳遞的按鈕,你確定一個的CustomButton正在被傳入呢?在向顯示樹添加元素之後,您不需要重新加載樣式聲明,只要樣式已註冊並且組件實現樣式的使用,就應該應用它們。 – shaunhusain 2012-03-26 17:00:00
謝謝,我會給你一個鏡頭 – user1210003 2012-04-02 20:35:13