Egret社区
1银子


大家好,如下代码:

this.mc.addEventListener(egret.Event.COMPLETE, function() {
   this.mc.removeEventListener(egret.Event.COMPLETE,  这里写什么, this);
} this);

最佳答案

查看完整内容

年轻人得学会多看API,once只侦听一次,然后自动删除侦听 once ( type :string, listener :Function, thisObject :any, useCapture ? :boolean, priority ? :number ):void 添加仅回调一次的事件侦听器,此方法与on()方法不同,on()方法会持续产生回调,而此方法在第一次回调时就会自动移除监听 API地址 http://developer.egret.com/cn/apidoc/index/name/egret.DisplayObject#methodSummary ...
分享到 :
0 人收藏

9 个回复

倒序浏览
ywx620  初窥堂奥 | 2018-1-8 08:39:46
年轻人得学会多看API,once只侦听一次,然后自动删除侦听       
once ( type :string, listener :Function, thisObject :any, useCapture ? :boolean, priority ? :number ):void
添加仅回调一次的事件侦听器,此方法与on()方法不同,on()方法会持续产生回调,而此方法在第一次回调时就会自动移除监听
API地址
http://developer.egret.com/cn/ap ... bject#methodSummary
lxybelieve  登堂入室 | 2018-1-8 09:24:45
不能如此去写,你这是匿名函数,是无法获取的,也很难看代码,你可以这样写
var testfunc = function() {
   this.mc.removeEventListener(egret.Event.COMPLETE,  这里写什么, this);
}

this.mc.addEventListener(egret.Event.COMPLETE, testfunc,this);
moquan  圆转纯熟 | 2018-1-8 09:30:34
非要这么写吗?多写一个方法不行吗?
zyy  圆转纯熟 | 2018-1-8 12:21:03
你这样的方法 只用一次,为什么不改为once方法呢
firecat  登堂入室 | 2018-1-8 14:26:35
this.mc.removeEventListener(egret.Event.COMPLETE,  arguments.callee, this);
如果用箭头函数就不能这么写了
ok10000  登堂入室 | 2018-1-9 22:10:02
zyy 发表于 2018-1-8 12:21
你这样的方法 只用一次,为什么不改为once方法呢

once是什么?
huangwei8123  登堂入室 | 2018-1-10 08:42:13
调用一次啊。
ok10000  登堂入室 | 2018-1-10 22:09:40

使用内部类只会调用一次吗?不是吧,我也是每次都添加和删除啊
ok10000  登堂入室 | 2018-1-12 08:19:59
ywx620 发表于 2018-1-11 10:04
年轻人得学会多看API,once只侦听一次,然后自动删除侦听       
once ( type :string, listener :Function, this ...

还有这个API,我还不知道,感谢!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|京网文[2014]0791-191号|京ICP证150115号|Egret社区 ( 京ICP备14025619号

Powered by Discuz! X3.2 © 2001-2016 Comsenz Inc.

返回顶部