你理解错了,你这个是在Window下面的,我说的是直接在编辑器上生成一个选项,然后向window那样点开后,不弹出框,而是直接显示选项
时间: 2024-04-13 10:28:28 浏览: 80
实现点击在组件下方弹出单选框。并且选中哪个哪个后方显示对勾。文字变色。同时展示Popupwindow实现和遮罩效果
非常抱歉理解错误了。要在Unity编辑器中生成一个选项,并在点击后直接显示选项内容,你可以使用EditorGUILayout类的类似于按钮的方法来实现。
以下是一个示例代码:
```csharp
using UnityEditor;
using UnityEngine;
public class MyCustomEditorWindow : EditorWindow
{
private bool showWhitePanel = false;
[MenuItem("Window/My Custom Editor")]
public static void ShowWindow()
{
GetWindow<MyCustomEditorWindow>("My Editor");
}
private void OnGUI()
{
EditorGUILayout.LabelField("My Custom Editor Window", EditorStyles.boldLabel);
if (GUILayout.Button("Show White Panel"))
{
showWhitePanel = !showWhitePanel;
}
if (showWhitePanel)
{
EditorGUILayout.BeginVertical(EditorStyles.helpBox);
EditorGUILayout.LabelField("Content of the White Panel", EditorStyles.centeredGreyMiniLabel);
// Add more GUI elements here
EditorGUILayout.EndVertical();
}
}
}
```
在这个示例中,我们在OnGUI方法中使用GUILayout.Button方法来生成一个按钮,按钮上显示"Show White Panel"文本。当点击按钮时,我们切换showWhitePanel变量的值,从而控制是否显示白色面板。
在showWhitePanel为true的情况下,我们使用EditorGUILayout.BeginVertical和EditorGUILayout.EndVertical来绘制一个带有文本的盒子,作为白色面板的内容。
你可以将这段代码添加到你的Unity项目中,然后通过选择"Window/My Custom Editor"来打开自定义编辑器窗口。点击"Show White Panel"按钮将会显示或隐藏白色面板的内容。你可以根据自己的需求进一步扩展和定制该窗口。
阅读全文