IEnumerator DoActionShow() { if (myCurrentState == State.GetDataFromSplashScreen) { currentScreen = listScreens.splashScreen; // StartCoroutine(DoActionGetFirstDataOnAndroid()); // #if UNITY_ANDROID // StartCoroutine(DoActionGetFirstDataOnAndroid()); // #elif UNITY_IOS // StartCoroutine(DoActionGetFirstDataOnIOS()); // #else // StartCoroutine(DoActionGetFirstDataOnAndroid()); // #endif } else if (myCurrentState == State.BackFromGamePlayToChooseTableScreen) { currentScreen = listScreens.chooseTableScreen; if (DataManager.instance.miniGameData.currentMiniGameDetail == null) { Debug.LogError("currentMiniGameDetail is NULL"); } else { DataManager.instance.miniGameData.currentMiniGameDetail.SortListServerDetailAgain(); } } else if (myCurrentState == State.LogOutAndBackToLoginScreen) { currentScreen = listScreens.loginScreen; } else { currentScreen = listScreens.chooseGameScreen; } currentScreen.InitData(); currentScreen.Show(); currentScreen.LateInitData(); if (myCurrentState != State.GetDataFromSplashScreen) { if (!DataManager.instance.getFirstDataSuccessfull) { HomeManager.instance.TryToGetFirstData(); } } myCurrentState = State.Unknown; yield return(null); }
public void ChangeScreen(UIHomeScreenController.UIType _typeScreen, bool _hideOldSubScreen = true) { if (_typeScreen == UIHomeScreenController.UIType.Unknown) { #if TEST Debug.LogError("Chưa Setup typeScreen!"); #endif return; } UIHomeScreenController _tmpScreen = GetScreen(_typeScreen); if (_tmpScreen == null) { return; } if (_tmpScreen.currentState != UIHomeScreenController.State.Show) { _tmpScreen.InitData(); } else { _tmpScreen.RefreshData(); } if (_tmpScreen.isSubScreen) { if (_tmpScreen.myLastType == UIHomeScreenController.UIType.Unknown) { _tmpScreen.myLastType = currentScreen.myType; } if (currentScreen.isSubScreen && _hideOldSubScreen) { currentScreen.Hide(); } currentScreen = _tmpScreen; } else { currentScreen.Hide(); currentScreen = _tmpScreen; } currentScreen.transform.SetAsLastSibling(); if (currentScreen.currentState != UIHomeScreenController.State.Show) { currentScreen.Show(); currentScreen.LateInitData(); } }