问题:
在做马上赚钱时,会出现退出卡死,然后清理程序,再进入还是卡死界面的情况,百思不得其解,昨天在做push的时候,突然发现,在android里面弹出一个退出对话框,点击确定退出,这时候调用endtolua时,有时也会切入前台。PSNotificationCenter.addObserver(nil, "APP_ENTER_FOREGROUND", function() do
something end.而且这两个操作顺序是随机的,而我们在切入前台时做了很多操作,所以导致有时候退出时,还在处理那些操作,所以界面卡死。
为什么会出现这种情况:
在android里,弹出一个对话框,会调用切入APP_ENTER_BACKGROUND,当关闭对话框,会进入前台。如果先进入前台,再退出,是没问题的,但如果先退出,再进入前台,那么这时如果前台操作里还有其他操作,那很容易就卡死了
解决办法:
延时endtolua操作,虽然延时不太靠谱,但能解决大部分问题的。
<span style="font-size:18px;">function game.exit() schedule.performWithDelayGlobal(function() --退出按钮 CCDirector:sharedDirector():endToLua() end, 0.2) end</span>
有更好的办法,请回复交流哦~
quick-cocos2d-x endToLua 退出会卡死
时间: 2024-11-08 08:08:24