版本:Unity 6 (6000.0)
语言英语
  • C#

AdvancedDropdown

UnityEditor.IMGUI.Controls 中的类

建议修改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交,但我们确实会阅读用户提出的每一项修改建议,并在适用情况下进行更新。

关闭

提交失败

由于某种原因,您的修改建议无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

描述

继承自此类以实现您自己的下拉控件。

using UnityEditor;
using UnityEngine;
using UnityEditor.IMGUI.Controls;

class WeekdaysDropdown : AdvancedDropdown { public WeekdaysDropdown(AdvancedDropdownState state) : base(state) { }

protected override AdvancedDropdownItem BuildRoot() { var root = new AdvancedDropdownItem("Weekdays");

var firstHalf = new AdvancedDropdownItem("First half"); var secondHalf = new AdvancedDropdownItem("Second half"); var weekend = new AdvancedDropdownItem("Weekend");

firstHalf.AddChild(new AdvancedDropdownItem("Monday")); firstHalf.AddChild(new AdvancedDropdownItem("Tuesday")); secondHalf.AddChild(new AdvancedDropdownItem("Wednesday")); secondHalf.AddChild(new AdvancedDropdownItem("Thursday")); weekend.AddChild(new AdvancedDropdownItem("Friday")); weekend.AddChild(new AdvancedDropdownItem("Saturday")); weekend.AddChild(new AdvancedDropdownItem("Sunday"));

root.AddChild(firstHalf); root.AddChild(secondHalf); root.AddChild(weekend);

return root; } }

public class AdvancedDropdownTestWindow : EditorWindow { void OnGUI() { var rect = GUILayoutUtility.GetRect(new GUIContent("Show"), EditorStyles.toolbarButton); if (GUI.Button(rect, new GUIContent("Show"), EditorStyles.toolbarButton)) { var dropdown = new WeekdaysDropdown(new AdvancedDropdownState()); dropdown.Show(rect); } } }

属性

minimumSize下拉窗口的最小尺寸。默认情况下,下拉窗口将尝试匹配给定矩形或渲染内容的宽度。

公共方法

Show调用此方法以在给定位置显示下拉菜单。

受保护方法

BuildRoot实现此方法以生成下拉菜单的内容。此方法在显示下拉菜单时调用。
ItemSelected重写此方法以在选择项目时收到通知。