-
关于我
-
跟随我
-
订阅我
-
关注一下
-
最新文章
- [02/13][日记]春节快乐心想事成
- [01/28][Flex]Adobe软件在电影阿凡达中的应用
- [12/30][排名]TIOBE程式語言最新排名-2009年12月版
- [12/30][日记]2009年终岁尾的一些感想
- [12/30][讲座]艾睿网12月份Cmax北京的演讲稿
- [11/28][日记]佛山、广州之行
- [11/21][Acrobat]Acrobat.com改版(包括Mobile版本)
- [11/19][AIR]基于AIR 2.0 的几点猜测
- [11/19][Silverlight]Silverlight 4 beta released!
- [11/18]Flash Player 10.1 and AIR 2.0 消息汇总
[Flex]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: ClassReference("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: ClassReference("com.rianote.flex.skin.KButton");
}
</fx:Style>
<mx:Button label="我是halo组件" styleName="sparkButtonStyle"/>
是不是很容易呢?同样对于经常熟悉开发Flex SDK 3的程序员来说,上述代码一点都不陌生。
再让我们对比一下spark组件的写法:
<fx:Style>
Button {
skinClass: ClassReference("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在兼容性方面还是花费了很大的力气。


