【问题标题】:How to reset/reload a flex application with out refreshing the html page or reloading the SWF file?如何在不刷新 html 页面或重新加载 SWF 文件的情况下重置/重新加载 flex 应用程序?
【发布时间】:2011-01-12 14:27:55
【问题描述】:

我有一个带有主页按钮的 flex 应用程序。单击此按钮时,我需要重置应用程序。我不能使用 navigateToURL 或 ExternalInterface.call("window.location.reload");因为重新加载 swf 文件是不可接受的。还有其他方法可以实现这一目标吗?非常感谢您对此提供任何帮助。

【问题讨论】:

    标签: apache-flex flex3 flex4


    【解决方案1】:

    无法从应用程序本身重新加载 flex 应用程序。 您可以调用将重新加载页面的 javascript 函数。 看看这个:http://livedocs.adobe.com/flex/3/html/help.html?content=passingarguments_4.html

    【讨论】:

    • 感谢您的快速回答,但正如我所提到的,我不能使用该方法,我想我只需要手动将所有视图/对象重置为其初始状态。
    【解决方案2】:

    Flex 中有这种状态的概念。 您需要做的是,保持两种状态,一种处于初始阶段(这是 swf 加载时的状态),另一种是用户正在与之交互的状态。 因此,假设您有两种状态: stat1,stat2

    每当点击主页时,您应该执行以下操作: 1.将用户带到stat2。 2.克隆stat2并将引用复制到stat1以备下次使用。 3.下次有点击主页时,反之。

    问候

    尼拉杰

    【讨论】:

    • 你能用一个小代码示例详细说明答案吗?
    【解决方案3】:

    您可以将大部分 flex 应用程序作为模块。在初始化或其他任何情况下加载模块。要引用,卸载/重新加载模块。那基本上是指应用程序

    【讨论】:

      【解决方案4】:

      您必须使用 javascript 函数来重新加载 url 中带有附加参数的 swf 文件,否则它将从缓存中重新加载 swf。 (http://abc.com/myswffile.swf?reload=12345)。 12345 - 这将是一个随机数。

      【讨论】:

        【解决方案5】:

        我想,你的情况是要求状态管理,我是一个 flex 开发者,所以我每天每次点击都会重置屏幕(屏幕上的空间总是更少),

        你想隐藏一些屏幕组件,当你点击屏幕上的一些按钮时(在 swf 中),那么你可以让它们可见=false 并且 includeInLayout=false,这也会将它们从内存中删除,

        <mx:states>
            <mx:State name="login">
            <mx:SetProperty target="{rpass}" name="visible" value="false" />        
            <mx:SetProperty target="{rpass}" name="includeInLayout" value="false" />
            </mx:State>
            <mx:State name="register">
                <mx:SetProperty target="{rpass}" name="visible" value="true"/>
                <mx:SetProperty target="{rpass}" name="includeInLayout" value="true"/>
            </mx:State>
        </mx:states>
        

        这里我有两种状态,登录和注册,所以当你点击注册按钮时,你的 rpass 文件就会显示出来,反之亦然,所以你可以制作这样的屏幕..

        flex3 中的状态模型很简单,如果你在 flex4 中,那就更漂亮了,

        希望对你有帮助

        安库尔

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2017-08-13
          • 1970-01-01
          • 1970-01-01
          • 2013-08-20
          • 2011-10-22
          • 1970-01-01
          • 1970-01-01
          • 2014-04-12
          相关资源
          最近更新 更多