绑定 MXML CSS 值

Binding MXML CSS value

在我的一些容器中,我想将 padding 和 gap 值绑定到一个变量,以便它们在我的整个应用程序中保持一致,我有以下代码

  <s:VGroup gap="{MyCSSStyle.space}"
            paddingLeft="{MyCSSStyle.space}"
            paddingRight="{MyCSSStyle.space}"
            paddingTop="{MyCSSStyle.space}"
            paddingBottom="{MyCSSStyle.space}">

但是,如果我必须到处复制内联样式就不好了,是否可以绑定 CSS 中的值,这样我就可以实现这样的目标?

    .myStyle {
            gap: {MyCSSStyle.space};
            paddingLeft: {MyCSSStyle.space};
            paddingRight: {MyCSSStyle.space};
            paddingTop: {MyCSSStyle.space};
            paddingBottom: {MyCSSStyle.space};
    }
    <s:VGroup styleName="myStyle">

我试过了,但是编译器不允许我那样做绑定。

CSS 的绑定在 flex 中是不可能的。相反,您可以使用 actionscript 动态地提供 css,如下所示:

MXML:

<s:VGroup id="vgContainer" />

脚本:

vgContainer.setStyle("paddingLeft",MyCSSStyle.space);
vgContainer.setStyle("paddingRight",MyCSSStyle.space);
vgContainer.setStyle("paddingTop",MyCSSStyle.space);
vgContainer.setStyle("paddingBottom",MyCSSStyle.space);

希望,它会有所帮助。