0

如何在 FLEX 4.6 中访问变量或将元素(如 tabNavigator)的状态从一个 mxml 更改为另一个 mxml?

4

1 回答 1

4

每个单独的 MXML 文件都应该被视为一个类,因为它们就是这样。

在封装理论中;两个类不应直接访问/更改彼此的变量或状态。他们应该使用 MXML 类的开发者提供的 API。

如果 MXML 1 是 MXML 2 的父级;那么 MXML1 可以通过设置公共属性或调用公共方法将数据传递给 MXML2。

MXML2 可以通过调度事件将数据传递给 MXML1。

如果 MXML1 和 MXML2 不是父子关系;(AKA 同一个组件的两个孩子作为一个例子)他们不应该直接相互交流。他们应该调度共同父母应该处理的事件,并使用它来设置值或在它自己的孩子上执行方法。

从封装的角度来看,这就是应该如何使用 ActionScript / Flex 的内置工具来完成的。

作为构建应用程序的一部分,很多人所做的就是利用依赖注入。那是“应用程序全局”的值可以在多个组件之间共享。另一种方法是使用单例。第三种方法可能是在类上使用静态值。无需访问类的实例即可访问。

于 2012-06-08T12:15:45.447 回答