InstanceManager.cs 817 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. namespace labelUtility
  2. {
  3. #if UNITY_EDITOR
  4. using System.Collections.Generic;
  5. using UnityEngine;
  6. using UnityEditor;
  7. using System;
  8. using System.IO;
  9. public class InstanceManager
  10. {
  11. public static T SearchInstance<T>()
  12. {
  13. foreach (var path in Directory.GetFiles(Application.dataPath, "LabelUtility.prefab", SearchOption.AllDirectories))
  14. {
  15. T t = AssetDatabase.LoadAssetAtPath<GameObject>(path.GetRelativePath()).GetComponent<T>();
  16. if (t != null)
  17. {
  18. return t;
  19. }
  20. }
  21. throw new Exception("找不到SerializeObject");
  22. }
  23. public static string[] SearchAllFiles(string pattern)
  24. {
  25. return Directory.GetFiles(Application.dataPath, pattern, SearchOption.AllDirectories);
  26. }
  27. }
  28. #endif
  29. }