我尝试过使用以下MXML组件的各种组合:
<?xml version="1.0" encoding="utf-8"?>
<s:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" width="80%" height="100%">
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
<s:DropShadowFilter id="mainDSF" color="0x000000" alpha=".7" blurX="20" blurY="20" quality="1" distance="0" />
</fx:Declarations>
<s:Graphic>
<s:Rect width="200" height="200" bottomLeftRadiusX="10" bottomLeftRadiusY="10"
bottomRightRadiusX="10" bottomRightRadiusY="10" filters="{[mainDSF]}"
horizontalCenter="0">
<s:fill>
<s:LinearGradient rotation="90">
<s:GradientEntry color="0x57DDF5" ratio=".05" />
<s:GradientEntry color="0x32D2F2" ratio=".25" />
<s:GradientEntry color="0x01B7E6" />
</s:LinearGradient>
</s:fill>
</s:Rect>
</s:Graphic>
</s:Group>
我尝试做一些非常简单的尝试是不成功的。我只想绘制一个带有阴影的渐变填充框,当使用我的主MXML文件中的popupManager创建时,它将是屏幕宽度的80%和屏幕高度的15%。
上面我的代码示例中的值以像素为单位,但这是不可取的。他们在那里,因为一旦我将这些更改为百分比,FlashBuilder 4.5就会从视图中消失。
我尝试使用Graphic标签包装Rect,尝试了width,percentageWidth,left&amp;的各种组合。正确的值..等等等(注意,左,右,顶部和底部属性也是不可取的,因为我希望将此框从屏幕顶部移动到MXML文档的顶部)
对此有任何帮助将非常感激。
答案 0 :(得分:2)
由于弹出管理器的工作方式,计算百分比会发生奇怪的事情。我不能完全把手指放在上面。但 黑客攻击 它可以正常工作。也许有人可以提出更好的东西,但看一看:
Graphic
节点height
和width
height
/ width
设置为parent
的函数。以下是代码:
<?xml version="1.0" encoding="utf-8"?>
<s:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx">
<fx:Declarations>
<s:DropShadowFilter id="mainDSF" color="0x000000" alpha=".7" blurX="20" blurY="20" quality="1" distance="0" />
</fx:Declarations>
<s:initialize>
height = parent.height * 0.15;
width = parent.width * 0.8;
</s:initialize>
<s:Rect width="100%" height="100%" bottomLeftRadiusX="10" bottomLeftRadiusY="10"
bottomRightRadiusX="10" bottomRightRadiusY="10" filters="{[mainDSF]}"
horizontalCenter="0">
<s:fill>
<s:LinearGradient rotation="90">
<s:GradientEntry color="0x57DDF5" ratio=".05" />
<s:GradientEntry color="0x32D2F2" ratio=".25" />
<s:GradientEntry color="0x01B7E6" />
</s:LinearGradient>
</s:fill>
</s:Rect>
</s:Group>
希望这会有所帮助。再次,它是一个黑客,但看起来它的工作;)