我的应用程序中有三个不同的视图。无论何时启动应用程序,都要加载一个本地xml文件。这三个视图都可以访问这个xml。
我编写了一个函数来加载主视图中的文件(onCreationComplete(。然而,首先,它在其他两个视图中是不可访问的,其次,每当弹出主视图时,它都会执行onCreationComplete方法并反复加载文件。
我需要的是:
1. load the xml only when the application is launched // once
2. access the file in all views
问候,
您可以使用navigator.pushView(SomeView,someData(的"data"参数将xml发送到视图中;
不过,这需要一些结构。
我建议你
- 编写一个小控制器,它将加载您的xml并存储它
- 在MainApp.mxml中或在您管理视图更改的任何位置保留此控制器的引用
- 在创建视图时将xml属性传递给视图(例如通过navigator.pushView(((
-
覆盖视图中的数据设置器。
var xml:XML ; override set data(value:Object):void { xml = value as XML; super.data = value; }
-
等待您的视图可以使用(例如,收听creationComplete-Event(。现在可以使用xml数据了。