这是我的代码:
public class CrazyWindow: EditorWindow
{
[MenuItem("Window/CrazyWindow")]
public static void Window()
{
EditorWindow.GetWindow(typeof(CrazyWindow));
Debug.Log("It should have appeared!");
}
string test = "";
public void OnGUI()
{
test = EditorGUILayout.TextField ("Text Field", test );
}
}
我在Windows 7上使用Unity3D v.4.3.4f1(免费版)。 我不知道为什么会发生这种情况,正如我在互联网上的教程中所看到的那样,它应该如何完成。该脚本也位于Editor文件夹中。
我可以点击选项" CrazyWindow"在窗口菜单中,我也收到Debug消息,通知我窗口应该正常工作,但除此之外没有任何反应。根本没有创建窗口!
可能是我的问题的原因是什么?
答案 0 :(得分:1)
尝试重命名MenuItem中的'CrazyWindow'部分以及类本身。 Unity会记住窗口是否可见,并且某些地方出现了问题。可能它认为你的窗口是可见的(在缓存中),而实际上它不是。
答案 1 :(得分:1)
问题解决了。
正如巴特所说,我使用的是自定义编辑器布局,就是窗口没有显示的情况。
我刚刚切换到其中一个工厂编辑器布局:ta dah,窗口就在那里......
漂亮的马车想法。
答案 2 :(得分:0)
正如 Bart 所说,它会记住无用的东西
让它记住我们想要它做什么
private void OnLostFocus() {
GetWindow<CrazyWindow>().Close();
}