public void Pop(EZLoadingType loadingType = EZLoadingType.LoadingScene1) { ClearActions(); if (GetComponent <PopSceneLoader>() == null) { _sceneLoader = gameObject.AddComponent <PopSceneLoader>(); } _sceneLoader.Load(loadingType); }
public void Push(string nextSceneName, EZLoadingType loadingType = EZLoadingType.LoadingScene1) { ClearActions(); RefreshStack(nextSceneName); if (GetComponent <PushSceneLoader>() == null) { _sceneLoader = gameObject.AddComponent <PushSceneLoader>(); } _sceneLoader.Load(loadingType); }
private IEnumerator InitLoadingView(EZLoadingType loadingType) { // 1. 加载Loading场景 _loadingName = loadingType.ToString(); yield return(SceneManager.LoadSceneAsync(_loadingName, LoadSceneMode.Additive)); var loadingScene = SceneManager.GetSceneByName(_loadingName); // 2. Loading场景初始化;首先要把EZScene对象移到LoadingScene,因为不能跨场景引用 SceneManager.MoveGameObjectToScene(gameObject, loadingScene); loadingView = FindObjectOfType <EZLoadingView>(); // 防止穿帮:先初始化Loading,初始化完成后再移除前一个场景 loadingView.StartProgress(ProcessPrevScene); }
public void Load(EZLoadingType loadingType) { StartCoroutine(InitLoadingView(loadingType)); }