Version: 2023.2
LanguageEnglish
  • C#

MixedValueScope

struct in UnityEditor

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

Description

Creates a group of controls that can visually represent a mixed value.

To configure a group of controls that can show a dash (-) if selected objects have different values, add `EditorGUI.MixedValueScope` before the group and set newMixedValue to true.

using UnityEditor;
using UnityEngine;

[CanEditMultipleObjects] [CustomEditor(typeof(MixedValueComponentTest))] public class MixedValueComponentTestEditor : Editor { public override void OnInspectorGUI() { SerializedProperty serializedPropertyMyInt = serializedObject.FindProperty("MyInt"); using (new EditorGUI.MixedValueScope(serializedPropertyMyInt.hasMultipleDifferentValues)) { EditorGUI.BeginChangeCheck(); int newValue = EditorGUILayout.IntField("My Int", serializedPropertyMyInt.intValue); if (EditorGUI.EndChangeCheck()) serializedPropertyMyInt.intValue = newValue; } serializedObject.ApplyModifiedProperties(); } }

public class MixedValueComponentTest : MonoBehaviour { public int MyInt; }

Additional resources: EditorGUI.showMixedValue.

Constructors

EditorGUI.MixedValueScopeCreates a new MixedValueScope that determines the start of the group of mixed value controls.