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);

Parameters

foldout 显示的折叠状态。
content 要显示的标签。
style 可选 GUIStyle
toggleOnLabelClick 单击标签时是否切换折叠状态。

Returns

bool 用户选择的折叠状态。如果为 true,则应渲染子对象。

Description

创建一个左侧带有折叠箭头的标签。

这适用于创建树或文件夹之类的结构,其中子对象仅在父项展开时显示。


Create a foldable menu that hides/shows the selected transform.


// Create a foldable menu that hides/shows the selected transform position.
// If no Transform is selected, the Foldout item will be folded until
// a transform is selected.

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(); } }