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程序研究院 发表