lufy's legend

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 8843|回复: 2
打印 上一主题 下一主题

ENTER_FRAME中删除自己导致闪烁bug的解决方案

[复制链接]

37

主题

8

好友

9312

积分

诸侯王

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

楼主
发表于 2015-2-27 17:08:06 |显示全部楼层
这样做虽然能解决你说的这个问题,但是每个显示对象都会每次拷贝(s.slice)自己的子对象数组,这样也会导致另外两个问题
第一个,就是内存使用量增加,这个影响倒不大
第二个,就是导致效率降低,画面上对象越多桢率越高,就会越明显,(数组自带的函数操作效率不高,如果想让效率更高,在高频率操作中,尽量避免数组的操作),虽然不能说这个非常严重,但是效率本来就是一点点来提升的,如果不注重每一个细节,积少成多,以后效率就会越来越慢,而且也不容易再改回来了

还是多谢了,这个地方我来想办法吧


除了上述的方法,还可以用一个数组保存需要删除的对象,在父元素的ENTER_FRAME事件中,清除这个列表里保存的对象,并清空这个数组。

如果开发中,真的碰到了这个问题,这个临时方案是可行的,因为不会影响到其他显示对象的列表操作
不回答与技术和引擎不相关的问题
回复

使用道具 举报

37

主题

8

好友

9312

积分

诸侯王

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

沙发
发表于 2015-2-27 17:53:31 |显示全部楼层
lufy 发表于 2015-2-27 17:08
这样做虽然能解决你说的这个问题,但是每个显示对象都会每次拷贝(s.slice)自己的子对象数组,这样也会导 ...

想了想,解决起来也并不太复杂,此问题1.9.8中解决
不回答与技术和引擎不相关的问题
回复

使用道具 举报

37

主题

8

好友

9312

积分

诸侯王

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

板凳
发表于 2015-2-27 21:52:32 |显示全部楼层
yorhomwang 发表于 2015-2-27 18:25
准备两套数组?

准备两套数组一样是浪费内存阿
还是等过两天新版本更新后直接看代码吧
不回答与技术和引擎不相关的问题
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

防止垃圾广告,请填写任意字符

Archiver|lufy's legend

GMT+8, 2024-5-4 16:11 , Processed in 0.046935 second(s), 19 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部