欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

flex 动态加载CSS

程序员文章站 2022-03-02 18:05:55
...

本文转自:http://hi.baidu.com/yitao/blog/item/b78f921363205d856438db66.html
原文出处:
http://blog.flexexamples.com/2007/12/12/loading-cascading-style-sheets-on-the-fly-using-the-flex-stylemanager-class/

使用 静态方法:
StyleManager.loadStyleDeclarations()


效果展示:
http://blog.flexexamples.com/wp-content/uploads/StyleManager_loadStyleDeclarations_test/bin/main.html

----------
代码说明:

<?xml version="1.0" encoding="utf-8"?><!-- http://blog.flexexamples.com/2007/12/12/loading-cascading-style-sheets-on-the-fly-using-the-flex-stylemanager-class/ --><mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"        layout="vertical"        verticalAlign="middle">    <mx:Script>        
<![CDATA[           
 import mx.styles.StyleManager;            
private function loadStyles(styleURL:String):void {
           StyleManager.loadStyleDeclarations(styleURL);
            
}        
]]>    
</mx:Script>    
<mx:ApplicationControlBar dock="true">       
 <mx:ComboBox id="comboBox"    prompt="Please select a style"   change="loadStyles(comboBox.selectedItem.data);">            <mx:dataProvider>               
 <mx:Array>                   
 <mx:Object label="red" data="styles/red.swf" />                  
 <mx:Object label="green" data="styles/green.swf" />                   
 <mx:Object label="blue" data="styles/blue.swf" />               
 </mx:Array>           
 </mx:dataProvider>       
 </mx:ComboBox>    
</mx:ApplicationControlBar>
</mx:Application>

下面时css文件,注意,要将css转换为 swf. 右键单击 css文件 选择convert css to swf.


/* blue.css */Application { backgroundColor: haloBlue;}
/* green.css */Application { backgroundColor: haloGreen;}
/* red.css */Application { backgroundColor: red;}