Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Flex CSS文件中使用常量_Css_Apache Flex - Fatal编程技术网

如何在Flex CSS文件中使用常量

如何在Flex CSS文件中使用常量,css,apache-flex,Css,Apache Flex,如何在Flex应用程序中有一个常量,我可以在Flex CSS文件中的多个位置应用它?例如,我可能有一个背景颜色,它在几个UI组件中是相同的,然后我希望只在一个地方设置这个颜色,并在所有样式子句中重复使用。类似于 public static const myColor = "#00FF00" ... component1 { backgroundColor: myColor } component2 { backgroundColor: myColor } 是啊,那不是很好吗?我

如何在Flex应用程序中有一个常量,我可以在Flex CSS文件中的多个位置应用它?例如,我可能有一个背景颜色,它在几个UI组件中是相同的,然后我希望只在一个地方设置这个颜色,并在所有样式子句中重复使用。类似于

public static const myColor = "#00FF00"

...

component1 
{
  backgroundColor: myColor
}

component2 {
  backgroundColor: myColor
}

是啊,那不是很好吗?我们没有办法在本地做到这一点。我们尝试过对颜色进行评论,例如:

background-color:/**mainBGColor**/#FFFFFF/*mainBGColor*/;
然后做GREP替换,但这不是很令人满意


一个很好的问题。Adobe,你在听吗?

这是我用的。看看这本书

这就是它在使用中的样子:

调色板

package
{
    // only make bindable if you want to use in skins
    // for example like color="{ColorPalette.crazyColor}"
    [Bindable]
    /**
     *  This class holds all of your global colors to apply to skins.
     */
    public class ColorPalette
    {
        // "var", not "const", so you can optionally change them at runtime
        public static var crazyColor:uint = 0xff0000;
        public static const applicationAccent:uint = 0x1a01dd;
    }   
}
样式表

@namespace mx "library://ns.adobe.com/flex/mx";
@namespace s "library://ns.adobe.com/flex/spark";
@namespace tlf "library://ns.adobe.com/flashx/textLayout";

mx|Panel
{
    color: crazyColor;
    backgroundColor: applicationAccent;
}
mx|Button
{
    color: crazyColor;
    backgroundColor: applicationAccent;
}
Flex 3同等产品:

Panel
{
    color: crazyColor;
    backgroundColor: applicationAccent;
}
Button
{
    color: crazyColor;
    backgroundColor: applicationAccent;
}   
示例应用程序

<?xml version="1.0" encoding="utf-8"?>
<mx:Application
    xmlns:mx="http://www.adobe.com/2006/mxml"
    xmlns:local="*">

    <mx:Script>
        <![CDATA[
            import ColorPalette;
        ]]>
    </mx:Script>

    <!-- simple css -->
    <mx:Style source="main.css"/>

    <!-- stylesheet palette -->
    <local:StylesheetMixin palettes="{[ColorPalette]}"/>

    <!-- sample container -->
    <mx:Panel id="panel" width="100%" height="100%" title="Stylesheet Palettes!">
        <mx:Button label="Button"/>
    </mx:Panel>

</mx:Application>  

我有以下选项板:

  • 颜色
  • 资产
  • 影响
  • 布局

适用于Flex 3和Flex 4。

我不知道Flex CSS文件是否以某种方式嵌入到项目中。如果它是一个普通的文本文件,但这里没有显示任何内容,请查看xCSS和LESS:Nice!我迫不及待地想把它连接起来。谢谢你的信息。我尝试过这种方法,正如您所提到的,它在Flex3环境中工作。顺便说一句,我发现这篇文章提供了类似的解决方案:这两种方法之间有什么利弊吗?一种“本地”的方法-