如图所示,在Unity Editor编辑器环境下编写这样一个功能:点击“浏览”按钮,打开一个窗口,选择文件并记录该文件夹的路径:
用到的API:EditorUtility类中的OpenFilePanel方法:
// 摘要:
// Displays the "open file" dialog and returns the selected path name.
// 参数:
// title:
//
// directory:
//
// extension:
public static string OpenFilePanel(string title, string directory, string extension);
第一个参数title:表示打开的窗口的标题:
第二个参数directory:打开窗口的默认文件夹路径,例如传入Application.dataPath,则窗口打开时路径为项目工程的Assets文件夹:
第三个参数extension:文件的后缀,即我们要选择的文件的类型,例如要选择.png类型图片:
测试代码:
using UnityEngine;
using UnityEditor;
public class Example : EditorWindow
{
[MenuItem("SKFramework/Example")]
private static void Open()
{
GetWindow<Example>().Show();
}
private string path;
private void OnGUI()
{
//水平布局
GUILayout.BeginHorizontal();
{
GUILayout.Label("路径", GUILayout.Width(50f));
path = GUILayout.TextField(path);
if (GUILayout.Button("浏览", GUILayout.Width(50f)))
{
path = EditorUtility.OpenFilePanel("窗口标题", Application.dataPath, "png");
}
}
GUILayout.EndHorizontal();
}
}
欢迎关注公众号 “当代野生程序猿”