如何在FLEX 4.6中访问变量或将元素的状态(如tabNavigator)从一个mxml更改为另一个mxml?
答案 0 :(得分:4)
每个单独的MXML文件都应该被视为一个类,因为它们就是这样。
封装理论;两个类不应该直接访问/改变彼此的变量或状态。他们应该使用MXML类开发人员提供的API。
如果MXML 1是MXML 2的父级;然后MXML1可以通过设置公共属性或调用公共方法将数据传递给MXML2。
MXML2可以通过调度事件将数据传递给MXML1。
如果MXML1和MXML2不在父子关系中; (同一组件的两个孩子都是一个例子)他们不应该直接相互沟通。他们应该派遣共同父母应该处理的事件,并使用它来设置值或在自己的孩子身上执行方法。
从封装的角度来看,应该使用ActionScript / Flex的内置工具来完成它。
许多人在构建应用程序时所做的是利用依赖注入。那就是“应用程序的全局”值可以在多个组件之间共享。另一种方法是使用Singleton。第三种方法可能是在类上使用静态值;无需访问类的实例即可访问。