为了在FLEX中实现动态样式切换,一般的做法是将CSS编译成SWF之后,再使用

StyleManager.loadStyleDeclarations("css.swf");

这样的方式来实现样式的切换工作.

我们可以在右键CSS文件,然后选择"编译CSS为SWF文件"来实现我们想要的效果.但是有一点注意,如果你的CSS中定义了类似

skinClass:ClassReference("cn.LunaStudio.skins.ImageButtonSkin");

这样的自定义的皮肤指向,编译出来的SWF中会找不到这些自定义的类,所以会在加载CSS.SWF之后使用的过程中报找不到类的错误.

这个时候,你需要把CSS文件放到SRC的根目录下,然后你就会发现编译出来的类便正常地包含了自定义的类了,然后一切正常了