我们项目是使用的SpriteAtlas图集,将“Include in Build”设置false,将图集分别打Bundle,通过“SpriteAtlasManager.atlasRequested”来实现延迟绑定加载的
- 问题
但这几天遇到个问题,就是在切场景时 由于我们会主动卸载非常驻图集,但切完场景后,发现卸载的图集又被预设引用时,但没有收到“SpriteAtlasManager.atlasRequested”回调,就导致图集不能加载,图片丢失
- 规律
最终还是发现了规律
就是引用图集的预设体是常驻内存,切场景也不卸载的
- 解决
那原理就很明显了,图集被卸载了,当预设没有卸载 而是通过克隆创建出来时,它是不会触发延迟绑定的,按照这个思路,尝试了下把常驻预设设置为非常驻,问题解决。
还有解决办法是将常驻预设引用的所有图集也同时设置为常驻
- 本文固定链接: http://www.u3d8.com/?p=2791
- 转载请注明: 网虫虫 在 u3d8.com 发表过