Flex SDK 4(Gumbo)更方便的自定義樣式、自定義SparkSkin(三)

通過上兩篇文章我們可以得到一個結論:使用SparkSkin、Skin方式設定spark組件的皮膚是非常容易的事情。如果同樣的效果在Flex SDK 3裏面設定的話,將會是件非常麻煩的事情。
Flex SDK 4(Gumbo)衆所周知有兩套組件:spark組件和halo組件,那麼既然spark組件中的皮膚設定是非常容易的事情,在halo中呢?能否也會像spark組件一樣方便?
答案:當然是肯定的。
其原因是:仍舊使用SparkSkin和Skin組件來完成自定義皮膚。
先回憶一下在spark組件中自定義皮膚的方法:
1、
Button {
    skinClass: Cla***eference("com.rianote.flex.skin.KButton");
}
2、<Button skinClass="com.rianote.flex.skin.KButton" />
3、myButton.setStyle( "skinClass", Class( KButton ));
在spark中,對其設定皮膚我們使用skinClass這個屬性。同樣在halo包裏面,我們應該如何定義這個皮膚呢?
看以下的代碼:
<fx:Style>
    .sparkButtonStyle {
         skin: Cla***eference("com.rianote.flex.skin.KButton");
    }
</fx:Style>
<mx:Button label="我是halo組件" styleName="sparkButtonStyle"/>
是不是很容易呢?同樣對於經常熟悉開發Flex SDK 3的程序員來說,上述代碼一點都不陌生。
再讓我們對比一下spark組件的寫法:
<fx:Style>
Button {
    skinClass: Cla***eference("com.rianote.flex.skin.KButton");
}
</fx:Style>
<s:Button label="我是spark組件" skinClass="com.rianote.flex.skin.KButton" />
其實我們僅僅從spark與halo共用一套自定義皮膚的方式得到一些信息:
Flex SDK 4(Gumbo)雖然在版本兼容上面並不是特別好,但是從這公用自定義皮膚的方式可以看出,Adobe Flex Team在兼容性方面還是花費了很大的力氣。
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章