Flex4的css文件中有3种常见的style声明类型:
如下实例代码:
@namespace "library://ns.adobe.com/flex/mx";
@namespace namespaceName "com.window.*";
ComponentClassName {
}
namespaceName |ComponentClassName{
}
.styleName {
}
在as、mxml代码中有4 种方法获取style声明或设置组建style:
1. FlexGlobals.topLevelApplication.styleManager.getStyleDeclaration("com.window.ComponentClassName");
2. FlexGlobals.topLevelApplication.styleManager.getStyleDeclaration(".styleName ");
3. FlexGlobals.topLevelApplication.styleManager.getStyleDeclaration("ComponentClassName");
4. This. StyleName = styleName
注意在Flex4中,当调用FlexGlobals.topLevelApplication.styleManager.getStyleDeclaration时,如果调用的类不在自定义style声明中,必须指定全局包名,而不是单个class名。
示例代码如下:
<?xml version="1.0"?>
<!-- migration/StyleManagerExample.mxml -->
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:mx="library://ns.adobe.com/flex/mx" xmlns:s="library://ns.adobe.com/flex/spark"
creationComplete="initApp()">
<fx:Script>
<![CDATA[
public function initApp():void {
/* New method of accessing the StyleManager. */
styleManager.getStyleDeclaration("spark.components.Button").setStyle("fontSize",15);
/* Old method; no longer works. */
StyleManager.getStyleDeclaration("Button").setStyle(setStyle("fontSize",15);
}
]]>
</fx:Script>
<s:Button id="myButton" label="Click Me"/>
</s:Application>