ViewMgr.cs 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. using UnityEngine.SceneManagement;
  5. using JCUnityLib;
  6. using UnityEngine.UI;
  7. public class ViewMgr : ViewManager<ViewMgr>
  8. {
  9. protected override void OnInited()
  10. {
  11. CanvasScaler viewMgrCanvasScaler = gameObject.GetComponent<CanvasScaler>();
  12. viewMgrCanvasScaler.referenceResolution = new Vector2(2532, 1170);
  13. viewMgrCanvasScaler.screenMatchMode = CanvasScaler.ScreenMatchMode.MatchWidthOrHeight;
  14. viewMgrCanvasScaler.matchWidthOrHeight = 0f;
  15. //设置视图组
  16. //SetViewGroup<HomeFrameView>(1);
  17. Debug.Log("初始化绑定ViewManager2.HideAllView");
  18. SceneManager.sceneUnloaded += OnSceneUnloaded;
  19. }
  20. //以下名称的预制体通过SceneResourceManager获取
  21. HashSet<string> scenePrefabs = new HashSet<string>(new string[] {
  22. //Home
  23. "HomeView", "PKMatchView", "RoleSelectView"
  24. });
  25. protected override GameObject LoadViewPrefab(string viewName)
  26. {
  27. if (scenePrefabs.Contains(viewName)) return SceneResourceManager.Instance.GetPrefab(viewName);
  28. return base.LoadViewPrefab("Home/" + viewName);
  29. }
  30. void OnSceneUnloaded(Scene scene)
  31. {
  32. ViewManager2.HideAllView();
  33. }
  34. }