flex 动态加载CSS

本文转自: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;}

 

你可能感兴趣的:(xml,css,Flex,Blog,Adobe)