Flex 增加监听后 监听不到事件 求帮助
UsersView.mxml里面的主要代码<fx:Script><![CDATA[protectedfunctioninit1():void{vardataLoader:...
UsersView.mxml里面的主要代码
<fx:Script>
<![CDATA[
protected function init1():void{
var dataLoader:DataLoader = new DataLoader();
dataLoader.addEventListener(ContentEvent.DATA_BACK,onData);
}
protected function onData(event:ContentEvent):void{
Alert.show("监听到DATA_BACK!");
userList.dataProvider = event.users;
} ]]>
</fx:Script>
<s:List id="userList" width="100%" height="100%" />
DataLoader.as里面的主要代码
public function DataLoader()
{
super();
_loader = new URLLoader;
_loader.addEventListener(Event.COMPLETE,onComplete);
}
protected function onComplete(event:Event):void{
var users:ArrayCollection = new ArrayCollection();
for each (var user:XML in XML(_loader.data).user){
users.addItem(user.@name + " - "+user.@site);
// Alert.show(user.@name+ " - " +user.@site);
}
var ev:ContentEvent = new ContentEvent(ContentEvent.DATA_BACK);
ev.users=users;
//Alert.show(String(ev.users.getItemAt(0,0)));
if(dispatchEvent(ev))
{
Alert.show("调度成功!");
}
}
就是运行后
dataLoader.addEventListener(ContentEvent.DATA_BACK,onData);
监听不到ContentEvent.DATA_BACK。。求教 要怎么做 展开
<fx:Script>
<![CDATA[
protected function init1():void{
var dataLoader:DataLoader = new DataLoader();
dataLoader.addEventListener(ContentEvent.DATA_BACK,onData);
}
protected function onData(event:ContentEvent):void{
Alert.show("监听到DATA_BACK!");
userList.dataProvider = event.users;
} ]]>
</fx:Script>
<s:List id="userList" width="100%" height="100%" />
DataLoader.as里面的主要代码
public function DataLoader()
{
super();
_loader = new URLLoader;
_loader.addEventListener(Event.COMPLETE,onComplete);
}
protected function onComplete(event:Event):void{
var users:ArrayCollection = new ArrayCollection();
for each (var user:XML in XML(_loader.data).user){
users.addItem(user.@name + " - "+user.@site);
// Alert.show(user.@name+ " - " +user.@site);
}
var ev:ContentEvent = new ContentEvent(ContentEvent.DATA_BACK);
ev.users=users;
//Alert.show(String(ev.users.getItemAt(0,0)));
if(dispatchEvent(ev))
{
Alert.show("调度成功!");
}
}
就是运行后
dataLoader.addEventListener(ContentEvent.DATA_BACK,onData);
监听不到ContentEvent.DATA_BACK。。求教 要怎么做 展开
2个回答
展开全部
dispatchEvent和AddEventListener应该是同一个对象进行派发和监听。
常用的做法:创建一个类如 EventManager 继承自 EventDispatcher,程序中就用EventManager类的实例进行Dispatch和AddEventListener即可。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
您可能需要的服务
百度律临官方认证律师咨询
平均3分钟响应
|
问题解决率99%
|
24小时在线
立即免费咨询律师
15200人正在获得一对一解答
沈阳星空之梦5分钟前提交了问题
重庆晨曦微光6分钟前提交了问题
广州萤火虫6分钟前提交了问题