Flex 4火花模糊过滤器问题



我正在尝试创建自己的模式窗口(内置的弹出管理器不适用于此应用程序),并使窗口后面的对象变得模糊。下面的代码显然是错误的,因为它不起作用,但有人能给我指明正确的方向吗?我必须手动模糊窗口后面的每个对象吗?

<s:Button label="Testing" left="512" top="300">     
</s:Button>
<s:Rect width="1024" height="768" alpha=".5">
    <s:fill>
        <s:SolidColor color="#000000">              
        </s:SolidColor>
    </s:fill>
    <s:filters>
        <s:BlurFilter>              
        </s:BlurFilter>
    </s:filters>
</s:Rect>

您的代码显然只会模糊那个黑色矩形,而不会模糊其他内容。这里的问题是,除了模态窗口之外,您希望模糊整个应用程序。

我能想到两种解决方案:

解决方案1

把你的整个应用程序放在一个单独的类中,并对其应用过滤器:

<s:Application>
    <s:States>
        <s:State name="normal" />
        <s:State name="modal" />
    </s:States>
    <view:Main>
        <view:filters.modal>
            <s:BlurFilter>
        </view:filters.modal>
    </view:Main>
    <s:Group includeIn="modal">
        <view:ModalWindow />
    </s:Group>
</s:Application>

(这不是一个工作代码示例:它的目的只是传达这个想法)

解决方案2

在弹出窗口之前,截屏你的应用程序(创建一个BitMap)。将该图像放在你的应用程序上,并对该图像应用模糊过滤器。然后放置模态窗口。你不能点击任何东西,因为图像覆盖了所有东西,但这是你想要的模式窗口的行为。

相关内容

  • 没有找到相关文章

最新更新