当切换场景的时候
B场景的init()函数要比A场景的onExit先执行。
如果我在A场景的onExit里把资源卸载了,那么B场景今后的操作可能就获取不到这个资源。
关闭窗口也会执行onExit,而关闭窗口是无法预测的,也就是说,资源肯定是要在onExit里卸载。
所以在onExit里必须有个判断,就是执行onExit是因为切换场景执行的,还是因为关闭窗口执行的。
我看CCDirector里有个isSendCleanupToScene函数,是判断是否切换场景卸载资源的。
不过这个值只能获取,不能设置。
我自己想过另外一个方法,就是弄一个单例,然后在单例里新增一个变量来判断是否卸载资源。
不过总感觉不是很想这么做。
因为既然CCDirector提供了isSendCleanupToScene这个方法,那么能用CCDirector的我就不想自己弄了。
可惜找不到设置这个值的函数。
大家有什么好方法吗?判断是切换场景还是关闭窗口。