Bindable(event =“...”)公共静态函数

时间:2013-05-18 14:10:20

标签: actionscript-3 flex binding mxml

我正在尝试绑定到静态函数,我指定一个绑定事件名称,然后从另一个静态函数触发该事件。

[Bindable(event="dataUpdated")]
public static function string(path:String) :String
{
    ...
}

private static function updateData() :void
{
    //doSomthing;
    staticEventDispatcher.dispatchEvent(new Event('dataUpdated'));
}

private static var staticEventDispatcher:EventDispatcher = new EventDispatcher();

我的观点在事件被触发时没有更新,有更好的方法吗?

我也尝试从类的实例调度事件,我添加了staticEventDispatcher作为最后的手段,但它没有用。


如果对于应用内的语言翻译,MyClass.string('stringPath')将返回已翻译的组件文本。我需要在用户更改语言时更新应用文本。

1 个答案:

答案 0 :(得分:2)

绑定不适用于静态属性和方法(有关详细信息,请参阅此问题Binding to static property)。

在您的情况下,最好将单例模式用于资源管理器,并从staticstring中移除updateData

MyClass.instance.string('stringPath')

MyClass

public static const instance:MyClass = new MyClass();