AssetDatebase也是一个静态类,他的作用是管理整个工程的所有文件(一般成为“资产”)。直观地说就是管理整个project窗口中的所有内容,比如,你可以增加、删除、修改文件等等。
这里有几个常常用到:
CreateAsset:创建文件
CreateFolder:创建文件夹
DeleteAsset:删除文件
GetAssetPath:获取文件相对于Assets所在目录的相对位置,如“Assets/Images/test.png”
LoadAssetAtPath:加载文件
Refresh:刷新整个project窗口
SaveAssets:保存所有文件
例子(实现右键点击文件或者文件夹,选择MyEditor/Delete Asset菜单后,删除选择的文件或者文件夹):
using UnityEditor;
public class EditorCase1
{
[MenuItem("Assets/MyEditor/Delete Asset")]
public static void CaseMenu()
{
var obj = Selection.activeObject;
var path = AssetDatabase.GetAssetPath(obj);
AssetDatabase.DeleteAsset(path);
}
}