Apache flex 将数据从视图传递到弹出窗口(SkinnablePopUp)将创建它

Apache flex 将数据从视图传递到弹出窗口(SkinnablePopUp)将创建它,apache-flex,popup,Apache Flex,Popup,一、 我在我的移动项目中打开一个弹出窗口,我需要传递打开的弹出窗口一些数据吗? 如果可能的话,这是怎么做到的?有几种方法 正如Rebog所提到的,myPopup.someProperty=value 启动弹出窗口后,发送一个应用程序范围的事件,其中包含弹出窗口处理事件和显示的数据(必须创建、嵌入数据并发送的自定义事件) 将数据存储在模型位置,即单例,从弹出窗口,您可以通过singleton.getinstance().value访问它 有几种方法可以做到这一点 正如Rebog所提到的,myPop

一、 我在我的移动项目中打开一个弹出窗口,我需要传递打开的弹出窗口一些数据吗?
如果可能的话,这是怎么做到的?

有几种方法

  • 正如Rebog所提到的,myPopup.someProperty=value
  • 启动弹出窗口后,发送一个应用程序范围的事件,其中包含弹出窗口处理事件和显示的数据(必须创建、嵌入数据并发送的自定义事件)
  • 将数据存储在模型位置,即单例,从弹出窗口,您可以通过singleton.getinstance().value访问它

  • 有几种方法可以做到这一点

  • 正如Rebog所提到的,myPopup.someProperty=value
  • 启动弹出窗口后,发送一个应用程序范围的事件,其中包含弹出窗口处理事件和显示的数据(必须创建、嵌入数据并发送的自定义事件)
  • 将数据存储在模型位置,即单例,从弹出窗口,您可以通过singleton.getinstance().value访问它

  • 一般地;创建弹出窗口后;只需将变量传递给它
    myPopUp.myCustomInstanceVariable=myValue
    ;与在ActionScript中创建任何其他组件没有区别。您能否解释如何将“myCustomInstanceVariable”添加到弹出窗口中。我已经使用SkinnablePopUpContainer创建了一个自定义弹出窗口,创建了一个扩展SkinnablePopUpContainer的自定义组件,并添加了一个变量
    public var myCustomInstanceVariable:DataType
    ;创建弹出窗口后;只需将变量传递给它
    myPopUp.myCustomInstanceVariable=myValue
    ;与在ActionScript中创建任何其他组件没有区别。您能否解释如何将“myCustomInstanceVariable”添加到弹出窗口中。我使用SkinnablePopUpContainer创建了一个自定义弹出窗口创建了一个自定义组件,该组件扩展SkinnablePopUpContainer并添加一个变量
    public var myCustomInstanceVariable:DataType
    我不理解您的#2建议。一旦您实例化弹出窗口,请侦听事件X。从事件的不同部分发送全局事件X需要向弹出窗口发送数据的应用程序。然后从弹出窗口上的事件中读取数据。(此解决方案有助于稍后将数据传递到弹出窗口,而不是在弹出窗口创建后立即传递数据)。我不知道在这种情况下,哪个组件正在进行侦听,哪个组件正在进行调度。冒泡事件应该在显示层次结构中上升到舞台;但我认为弹出窗口——与PopUpManager一起显示的弹出窗口存在于显示层次结构之外。是的,冒泡发生在显示层次结构上,但是,如果您在自定义调度程序(singleton)或systemmanager或顶级应用程序上侦听/调度事件,我们可以将其称为全局事件。我不理解您的#2建议。一旦您实例化弹出窗口,请侦听事件X。从需要向弹出窗口发送数据的应用程序的不同部分发送全局事件X。然后从弹出窗口上的事件中读取数据。(此解决方案有助于稍后将数据传递到弹出窗口,而不是在弹出窗口创建后立即传递数据)。我不知道在这种情况下,哪个组件正在进行侦听,哪个组件正在进行调度。冒泡事件应该在显示层次结构中上升到舞台;但是我认为弹出窗口——与PopUpManager一起显示——存在于显示层次结构之外。是的,冒泡发生在显示层次结构上,但是,如果您侦听/分派自定义调度程序(singleton)或systemmanager或顶级应用程序上的事件,我们可以将其称为全局事件。