我目前正在使用最新版本的Flash Builder开发一个移动应用程序,我需要创建一个全局ArrayCollection来存储从本地DB提取的信息。我可以从数据库中拉回数据,但是当我尝试时,我似乎无法访问全局变量。我有下面的。as文件名为"模型。该文件位于名为valueObjects的文件夹中,该文件包含以下代码:
package valueObjects
{
import flash.data.SQLConnection;
import mx.collections.ArrayCollection;
public class Model
{
public var ids:ArrayCollection = new ArrayCollection();
public function Model()
{
}
}
}
现在我想开始用数据库中的信息填充这个ArrayCollection,所以我将类导入到默认包mxml文档中,它将在应用程序启动时首先加载,使用:
import valueObjects.Model;
然后在私有函数中,我尝试访问id的ArrayCollection并填充它,但我得到以下错误:
-1120: Access of undefined property ids.
-Access of undefined property ids
有谁能帮帮忙吗?由于 您是否创建了Model类的实例?
在你想要访问它的类中,你应该这样做:
var myModel : Model = new Model();
要在类之间共享模型实例,您将不得不做更多的工作。要么传递对同一对象的引用,要么使用另一种方法,比如创建Singleton。许多Flex框架,如Cairngorm或RobotLegs,如果你需要一个例子,可以使用singleton。
或者最简单的方法是使数组静态。
public static var ids:ArrayCollection = new ArrayCollection();