flex中ViewStack的NavigatorContent两个的话,只能监听到第一个里面的事件,不能监听到第二个里面的事件
小女子最近被自定义组件和主程序之间的交互弄得晕头转向的,好不容易能监听到组件里面的事件,但是第二个NavigatorContent的内容却监听不到,妹子求助了。...
小女子最近被自定义组件和主程序之间的交互弄得晕头转向的,好不容易能监听到组件里面的事件,但是第二个NavigatorContent的内容却监听不到,妹子求助了。
展开
展开全部
ViewStack有一个属性creationPolicy,你把这个属性设置为all,再试试看。
creationPolicy默认值为auto,这时候ViewStack中的NavigatorContent是延迟创建的。也就是说只有用到第二个NavigatorContent的时候,它才会实例化。如果,没有要显示第二个NavigatorContent的时候,那第二个NavigatorContent就暂时不创建。啥时候用到了,需要显示出来了,第二个NavigatorContent才被实例化。如果没有实例化,就肯定监听不到它里面的事件了。
第一次回答问题,求好评
creationPolicy默认值为auto,这时候ViewStack中的NavigatorContent是延迟创建的。也就是说只有用到第二个NavigatorContent的时候,它才会实例化。如果,没有要显示第二个NavigatorContent的时候,那第二个NavigatorContent就暂时不创建。啥时候用到了,需要显示出来了,第二个NavigatorContent才被实例化。如果没有实例化,就肯定监听不到它里面的事件了。
第一次回答问题,求好评
更多追问追答
追问
但是我显示了第二个NavigatorContent,没监听到。谢谢你的回答。。
追答
你是怎样监听的事件?
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
这个方法前面,你写的是哪个对象?
你是为viewStack对象注册的监听器,还是 为navigatorContent对象注册的监听器?
最保险的方法就是,为派发事件的对象注册监听器。就是说发事件的对象监听自己,然后方法(就是这个参数listener:Function)写上你希望调用的方法。
能贴下你的代码吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
大雅新科技有限公司
2024-11-19 广告
2024-11-19 广告
这方面更多更全面的信息其实可以找下大雅新。深圳市大雅新科技有限公司从事KVM延长器,DVI延长器,USB延长器,键盘鼠标延长器,双绞线视频传输器,VGA视频双绞线传输器,VGA延长器,VGA视频延长器,DVI KVM 切换器等,优质供应商,...
点击进入详情页
本回答由大雅新科技有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询