Unity的Project里面放了很多游戏资源,比如脚本或者图片。正常情况下我们可以通过鼠标双击来进行打开。假如我现在不想主动双击打开,我想自动打开某个脚本或者图片再或者别的资源怎么办?
如下代码所示,两种方法都OK 。这里是测试我用的是鼠标主动选择的对象,可以把需要打开的资源对象使用AssetDatabase.LoadAssetAtPath读取进来, 这样就可以打开任意对象了。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
using UnityEngine; using System.Collections; using UnityEditor; public class MyPng :Editor { [MenuItem("Assets/Auto Open")] static void Run() { var obj = Selection.activeObject; if (obj != null) { if (!string.IsNullOrEmpty (AssetDatabase.GetAssetPath (obj.GetInstanceID ()))) { AssetDatabase.OpenAsset (obj); } } } [MenuItem("Assets/Auto Open2")] static void Run1() { var obj = Selection.activeObject; if (obj != null) { if (!string.IsNullOrEmpty (AssetDatabase.GetAssetPath (obj.GetInstanceID ()))) { EditorApplication.ExecuteMenuItem ("Assets/Open"); } } } } |
- 本文固定链接: http://www.xuanyusong.com/archives/3875
- 转载请注明: 雨松MOMO 2016年01月26日 于 雨松MOMO程序研究院 发表