无法添加工具提示以在鼠标悬停时出现 unity EditorGUILayout.Popup()
Cannot add a tooltip to appear when the mouse hovers to a unity EditorGUILayout.Popup()
我有一个非常复杂的统一 GUI public 重写 void OnInspectorGUI()。
对于我所有的普通字段,我可以在 class 本身中添加一个带有 header: Tooltip[("")] 的工具提示。
但是,我需要一个动态下拉列表,需要使用列表元素的数量进行更新。
我工作得很好。找到下拉列表的自定义编辑器脚本代码:
string[] options = new string[movParamsListSize];
for (int i = 0; i < movParamsListSize; i++)
options[i] = i.ToString();
Rect r = EditorGUILayout.BeginHorizontal();
movStepToMoveTo.intValue = EditorGUILayout.Popup("movementStepToMoveTo",
movStepToMoveTo.intValue, options, EditorStyles.popup);
EditorGUILayout.EndHorizontal();
另找一个截图:
我的问题是我尝试了 EditorGUILayout.Popup() 函数的所有重载函数(下图来自元数据),但无法弄清楚当鼠标悬停在该控件上时如何添加工具提示。
非常感谢任何帮助。非常感谢
改用 EditorGUILayout.Popup
that takes a GUIContent
的重载:
EditorGUILayout.Popup(new GUIContent("movementStepToMoveTo", "YOUR TOOLTIP HERE"), movStepToMoveTo.intValue, options);
顺便说一句,EditorStyles.Popup
是多余的,因为这是 Popup
的默认设置;)
和 HorizontalGroup
在这里都是多余的。反正你只有一个控件。
我有一个非常复杂的统一 GUI public 重写 void OnInspectorGUI()。 对于我所有的普通字段,我可以在 class 本身中添加一个带有 header: Tooltip[("")] 的工具提示。 但是,我需要一个动态下拉列表,需要使用列表元素的数量进行更新。 我工作得很好。找到下拉列表的自定义编辑器脚本代码:
string[] options = new string[movParamsListSize];
for (int i = 0; i < movParamsListSize; i++)
options[i] = i.ToString();
Rect r = EditorGUILayout.BeginHorizontal();
movStepToMoveTo.intValue = EditorGUILayout.Popup("movementStepToMoveTo",
movStepToMoveTo.intValue, options, EditorStyles.popup);
EditorGUILayout.EndHorizontal();
另找一个截图:
我的问题是我尝试了 EditorGUILayout.Popup() 函数的所有重载函数(下图来自元数据),但无法弄清楚当鼠标悬停在该控件上时如何添加工具提示。
非常感谢任何帮助。非常感谢
改用 EditorGUILayout.Popup
that takes a GUIContent
的重载:
EditorGUILayout.Popup(new GUIContent("movementStepToMoveTo", "YOUR TOOLTIP HERE"), movStepToMoveTo.intValue, options);
顺便说一句,EditorStyles.Popup
是多余的,因为这是 Popup
的默认设置;)
和 HorizontalGroup
在这里都是多余的。反正你只有一个控件。