我有一个Flex应用程序我正在与一个团队合作。这是一个简单的旅行社,我们的数据从URL中提取并存储在XML对象中。
目前,我们的应用程序结构与布局类似于网页。使用应用程序文件保持主要外观和布局(标题容器,主体容器和页脚容器)。
我有其他mxml组件文件,其中包含应用程序的内容(标题组件类,页面1等)。但是这些页面需要操纵我将要接受的数据。
基本思想是在构建数据后在应用程序中加载数据,并将原始xml列表的副本传递给用户当前所在的任何页面,以便在使用Flex XML对象类查询其搜索参数时修改副本。基本上开始大(所有度假点)和更具体(从指定的参数中选择几个)。
我正在考虑使用字符串(即.toXMLString)传递副本,并在每个页面中使用修改后的XML字符串创建另一个XML对象,但不确定如何传递该字符串对象。
然而,我对如何执行此操作感到有点困惑,因为在我自己搜索示例时,它包括创建事件,创建一个全局的actionscript文件,以及人们建议在我的应用程序中使用可绑定的public var。所以这有点令人困惑。我不是在寻找一个完整的解决方案,只是一些基本的东西,我可以继续使用,然后在我对它有一个很好的理解后实现到这个应用程序。
答案 0 :(得分:0)
Reboog711发布的示例正是我所寻找的。我能够实现一个示例并将我想要的功能添加到我的应用程序中。
编辑:无法在2天之前将其标记为答案。
编辑#2:我通过使用元数据并为参数中的每个MXML文件定义事件来解决它。我在我的组件MXML中定义了这些:
MXML组件文件:
<fx:Metadata>
[Event(name="customEvent", type="flash.events.Event")]
</fx:Metadata>
然后定义一个var对象来接受该MXML组件中的对象和方法:
public var someObject:Object = new Object();
public function setObject(objectRef:Object):void{
xmlList = new XML(xmlString);
}
然后,当您使用组件时,在MXML应用程序文件中,您可以执行以下操作来调用您的活动:
<[Package]:[Component Name] id="id" includeIn="[State]" passXML="id.someObject(passedObject)"/>