Объявление
public static bool Foldout(bool foldout, string content, bool toggleOnLabelClick, GUIStyle style = EditorStyles.foldout);public static bool Foldout(bool foldout, GUIContent content, bool toggleOnLabelClick, GUIStyle style = EditorStyles.foldout);
public static bool Foldout(bool foldout, string content, GUIStyle style = EditorStyles.foldout);
public static bool Foldout(bool foldout, GUIContent content, GUIStyle style = EditorStyles.foldout);
Параметры
foldout | Показан в разложенном состоянии. |
content | Ярлык для отображения. |
style | Необязательный стиль GUIStyle. |
toggleOnLabelClick | Указывает, переключается ли нажатие на метку в развернутом состоянии. Значение по умолчанию неверно. Установите значение true, чтобы включить метку в интерактивную область. |
Возвращает
bool Состояние раскрытия, выбранное пользователем. Если это правда, вы должны визуализировать подобъекты.
Описание
Создаёт метку с развернутой стрелкой слева от нее.
Это полезно для создания структур, подобных дереву или папке, в которых дочерние объекты отображаются только в том случае, если родительский элемент развернут.

// Создаем складное меню, которое скрывает/показывает выбранную позицию преобразования.
// Если Transform не выбрано, элемент Foldout будет свернут до тех пор, пока
// преобразование выбрано.
using UnityEditor;
using UnityEngine;
public class FoldoutUsage : EditorWindow
{
bool showPosition = true;
string status = "Select a GameObject";
[MenuItem("Examples/Foldout Usage")]
static void Init()
{
FoldoutUsage window = (FoldoutUsage)GetWindow(typeof(FoldoutUsage));
window.Show();
}
public void OnGUI()
{
showPosition = EditorGUILayout.Foldout(showPosition, status);
if (showPosition)
if (Selection.activeTransform)
{
Selection.activeTransform.position =
EditorGUILayout.Vector3Field("Position", Selection.activeTransform.position);
status = Selection.activeTransform.name;
}
if (!Selection.activeTransform)
{
status = "Select a GameObject";
showPosition = false;
}
}
public void OnInspectorUpdate()
{
this.Repaint();
}
}