我正在尝试在Flex中的显示对象上添加一些遮罩。
我得出的结论是,这可能是不可能的!
我到目前为止的一个例子是:
以下代码可以按原样运行:
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"
backgroundColor="#ffffff" width="100%" height="100%">
<s:layout>
<s:VerticalLayout>
</s:VerticalLayout>
</s:layout>
<!--http://sherifabdou.com/2008/09/applying-a-mask-in-flex-4-by-using-the-masktype-property/-->
<s:Group id="mainGroup" maskType="clip" width="100%" height="100%">
<s:mask>
<s:Group id="maskGroup" width="200" height="40"
x="100"
y="100" >
<s:Rect width="100%" height="100%" radiusY="20" radiusX="20" >
<s:fill>
<s:SolidColor color="0xFFFFFF"/>
</s:fill>
</s:Rect>
</s:Group>
</s:mask>
<s:Rect x="5" y="1" width="600" height="600" radiusX="25" radiusY="25">
<!--http://www.java2s.com/Code/Flex/Graphics/RadialGradientdemo.htm-->
<s:fill>
<s:RadialGradient>
<s:GradientEntry color="0x0056FF" ratio="0" alpha=".5" />
<s:GradientEntry color="0x00CC99" ratio=".33" alpha=".5" />
<s:GradientEntry color="0xECEC21" ratio=".66" alpha=".5" />
</s:RadialGradient>
</s:fill>
</s:Rect>
<!--<s:Image width="100%" height="100%" source="@Embed('assets/1.jpg')"/>-->
</s:Group>
</s:Application>