在VS、Mono中使用Unity編輯器相關命名空間,然後F12就能跳到具體的編輯器命名空間定義中,查閱好相關字段、方法等,再使用反射技術就可以使用内部的私有方法。
大體形式如下:
1. #if UNITY_EDITOR
2. using UnityEditor;
3. using UnityEditor.Sprites;
4. using System.Reflection;
5. #endif
6. using UnityEngine;
7. using System;
8. using System.Collections;
9. using UnityEngine.UI;
10.
11. using Object = UnityEngine.Object;
12.
13. public class NewBehaviourScript : MonoBehaviour
14. {
15. void Start()
16. {
17. #if UNITY_EDITOR
18. MethodInfo dynMethod = typeof(PackageInfo).GetMethod("GetPackageList", BindingFlags.NonPublic | BindingFlags.Static);
19. object obj = dynMethod.Invoke(typeof(PackageInfo), null);
20.
21. PackageInfo[] packageInfos = obj as PackageInfo[];
22. foreach(PackageInfo packageInfo in packageInfos)
23. {
24. Debug.Log("-----------------------------------------------");
25. Debug.Log(packageInfo.iconURL);
26. Debug.Log(packageInfo.jsonInfo);
27. Debug.Log(packageInfo.packagePath);
28. }
29. #endif
30. }
本文轉自 甯金峰 51CTO部落格,原文連結:http://blog.51cto.com/13243523/1982789,如需轉載請自行聯系原作者