Unity3D 编辑器扩展 跳转显示指定目录

做编辑器扩展开发时,假如我们生成一个文件到Assets之外的目录,要查看它的时候,需要从系统路径一步步打开到那个目录。
Unity给我们提供了一个API可以直接打开指定目录,类似Project窗口右键文件选择“Reveal in Finder” 从系统窗口显示文件。

EditorUtility.RevealInFinder(string outputPath);

利用这个API我们可以做诸如编译成功后直接跳转到文件所在目录的操作,方便直接查看。

假设我们用编辑器生成了一个level1.txt文件 位于 configfiles目录中,点击对话框中的确定,就可以直接打开显示它。

先看下效果
Unity3D 编辑器扩展 跳转显示指定目录_第1张图片

代码如下:

using System.Collections;
using System.Collections.Generic;
using System.IO;
using UnityEditor;
using UnityEngine;

public class ShowSystemFinder {

   [MenuItem("UnityAsk/DoTest")]
   private static void DoTest()
   {
      var outputPath = "configfiles";
      if (!Directory.Exists(outputPath))
      {
         Directory.CreateDirectory(outputPath);
      }

      File.WriteAllText(Path.Combine(outputPath,"level1.txt"),"this is level one");
      
      
      if (EditorUtility.DisplayDialog("UnityAsk的Unity3D小技巧","我完成了","确定"))
      {
         EditorUtility.RevealInFinder(outputPath);
      }
   }
}

创建ShowSystemFinder.cs文件,并放到Editor目录下。

Unity技术交流 微信公众号 UnityAsk,QQ群:891920228

你可能感兴趣的:(Unity3D编辑器)