我有一个关于 flex 的 P2P 的问题。使用 P2P 在两个应用程序之间传递数据时。我收到以下错误:
warning: unable to bind to property 'piece' on class 'Object' (class is not an IEventDispatcher)
我花了几天时间使用 Google 尝试找到解决方案,但无法摆脱该错误。我尝试使用 ObjectUtils,直接分配,并在括号内使用 ObjectUtils 创建一个新的 ArrayCollection,但仍然无法解决问题。
代码目的:
-> 两个用户通过 P2P 连接
->第一个用户可以操作图片(作为对象存储在数组集合中)。
->第一个用户将更新的 ArrayCollection(带有更改的图片)发送给第二个用户
->第二个用户的 ArrayCollection 得到更新,现在可以看到经过处理的图片
就我对 Flex 的了解(对它来说相当新)而言,我正确地绑定了需要绑定的内容。使用弹出窗口和跟踪,我能够看到来自 ArrayCollection 的数据被正确复制,但它只是不想显示。
以下是我的一些代码片段:
[Bindable]
public var taken:ArrayCollection = new ArrayCollection ([
new picLayout(1,'sky.png'),
new picLayout(2,'bird.png')
])
public function receiveSomeData(pass:ArrayCollection):void
{
// Want to replace current version of variable "taken" with
// the one passed in using P2P
this.taken= new ArrayCollection(pass.source);
}
public function sendSomeData(free:ArrayCollection):void
{
sendStream.send("receiveSomeData",free);
}
<s:Button click="sendSomeData(taken)" label="Update" />
感谢您的帮助和时间!