outline flex 4 fxg graphic

时间:2013-04-05 09:28:01

标签: flex flex4 flex4.5

我正在尝试在flex 4中为我的fxg形状边缘添加一个粗边框(形状:munch2 id =“paper”)以表示出血区域。

请有人建议一种方法来做到这一点,我需要用可变宽度来做,而不是在我绘制fxg时设置它

由于 大卫

<?xml version="1.0" encoding="utf-8"?>
<s:Module xmlns:fx="http://ns.adobe.com/mxml/2009" 
          xmlns:s="library://ns.adobe.com/flex/spark" 
          xmlns:mx="library://ns.adobe.com/flex/mx"
          xmlns:shapes="fxgGraphics.shapes.*"
          width="100%" height="100%">
    <fx:Declarations>
        <!-- Place non-visual elements (e.g., services, value objects) here -->
    </fx:Declarations>
    <fx:Style>
        @namespace s "library://ns.adobe.com/flex/spark";
        @namespace mx "library://ns.adobe.com/flex/mx";
        @namespace shapes "fxgGraphics.shapes.*";

        #paper {
            border: 3px solid #ff6600;
        }
    </fx:Style>
    <shapes:munch2 id="paper" width="100%" height="100%" horizontalCenter="0" verticalCenter="0" />
</s:Module>

1 个答案:

答案 0 :(得分:0)

FXG资产针对显示图形进行了优化,不支持CSS样式或Flex组件所做的许多其他事情。

此外,Flex不支持您用于设置边框的简写语法。与HTML中的CSS相比,Flex中的CSS相当有限。

一个简单的解决方案是将您的FXG资产包装在另一个Flex组件中,例如BorderContainer。然后,您可以将边框应用于容器对象:

<s:BorderContainer borderColor="#ff0000" borderWeight="2" cornerRadius="6">
    <local:MyFxgAsset />
</s:BorderContainer>

样式属性borderColorborderWeight等也可以通过CSS应用(但不能使用该缩写/组合语法)。