/// <summary> /// 重启项目(动更完成后) /// </summary> private void Relaunch() { // destroy Common.luaMgr.Destroy(); Destroy(Common.looper); Destroy(Stage.uiCanvas.gameObject); // clear reference Stage.ClearReference(); AudioManager.ClearReference(); SafeAreaLayout.ClearReference(); LocalizationText.ClearReference(); ViewPager.ClearReference(); TcpSocket.ClearReference(); UdpSocket.ClearReference(); NetHelper.ClearReference(); DestroyEventDispatcher.ClearReference(); PointerEventDispatcher.ClearReference(); TriggerEventDispatcher.ClearReference(); DragDropEventDispatcher.ClearReference(); StageTouchEventDispatcher.ClearReference(); AvailabilityEventDispatcher.ClearReference(); // unload ResManager.UnloadAll(); // relaunch StartCoroutine(Launch()); }
static int UpdateLayout(IntPtr L) { try { ToLua.CheckArgsCount(L, 1); ShibaInu.SafeAreaLayout obj = (ShibaInu.SafeAreaLayout)ToLua.CheckObject <ShibaInu.SafeAreaLayout>(L, 1); obj.UpdateLayout(); return(0); } catch (Exception e) { return(LuaDLL.toluaL_exception(L, e)); } }