如何在Flex应用程序中在运行时加载和应用CSS样式表?

时间:2010-05-26 05:01:35

标签: css flex flex3

我想从URL加载CSS样式表,并在运行时将它们应用到我的Flex 3应用程序。有可能吗?

2 个答案:

答案 0 :(得分:3)

您可以在运行时加载css文件以设置TextField中文本的样式。

var loader:URLLoader = new URLLoader();
var req:URLRequest = new URLRequest("style.css");
loader.load(req);
loader.addEventListener(Event.COMPLETE, completeHandler);

private function completeHandler(e:Event):void 
{
  var css:StyleSheet = new StyleSheet();
  css.parseCSS(e.target.data);
  yourTextField.styleSheet = css;
}

至于样式控件,我担心你无法在运行时加载文本文件。您可以使用StyleSheet课程对其进行解析 - 请查看styleNames arraygetStyle方法。

答案 1 :(得分:2)

  

您无法加载未编译的CSS文件   在运行时进入Flex应用程序   时间。您必须将其编译为SWF   加载前的文件。 - Adob​​e Flex 3文档

您可以使用样式管理器加载样式表(已编译)。

完全失败:Loading style sheets at run time