AS3中的动态类:听取属性创建?

时间:2012-11-09 02:44:31

标签: actionscript-3

我目前正在开发一个涉及重新实现Array类的项目。 出于兼容性原因,该对象需要是一个Array,而我还需要控制写入的内容。

我似乎无法找到任何方法来检查AS3中动态对象内的属性创建。像Event.ADDED_TO_STAGE那样工作的东西,比如ClassEvent.PROPERTY_ADDED。

我重写push,splice等方法,但我无法控制直接赋值:MyArray [i] = ...

这样的事情是否可能?

当然,我可以在其他地方进行某种验证,但这会涉及访问我无法修改的部分代码。

谢谢你的时间!

1 个答案:

答案 0 :(得分:0)

我不确定我是否完全关注你,但你可能正在寻找Proxy类:

http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/utils/Proxy.html

底部的示例显示了如何覆盖直接分配:

override flash_proxy function setProperty(name:*, value:*):void {
    _item[name] = value;
}

使用此功能,您可以调度每次将项目添加到ProxyArray时触发的自定义事件