コード例 #1
0
ファイル: EZScene.cs プロジェクト: hesansi/EZWork
 public void Pop(EZLoadingType loadingType = EZLoadingType.LoadingScene1)
 {
     ClearActions();
     if (GetComponent <PopSceneLoader>() == null)
     {
         _sceneLoader = gameObject.AddComponent <PopSceneLoader>();
     }
     _sceneLoader.Load(loadingType);
 }
コード例 #2
0
ファイル: EZScene.cs プロジェクト: hesansi/EZWork
        public void Push(string nextSceneName, EZLoadingType loadingType = EZLoadingType.LoadingScene1)
        {
            ClearActions();
            RefreshStack(nextSceneName);

            if (GetComponent <PushSceneLoader>() == null)
            {
                _sceneLoader = gameObject.AddComponent <PushSceneLoader>();
            }
            _sceneLoader.Load(loadingType);
        }
コード例 #3
0
ファイル: EZSceneLoader.cs プロジェクト: hesansi/EZWork
        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);
        }
コード例 #4
0
ファイル: EZSceneLoader.cs プロジェクト: hesansi/EZWork
 public void Load(EZLoadingType loadingType)
 {
     StartCoroutine(InitLoadingView(loadingType));
 }