UnityTips 之组件支持多对象编辑后,不同值的表现

2024-08-25  本文已影响0人  暴走TA

简介: 当我们写的组件开启CanEditMultipleObjects 后,意味着用户可以多选对象同时编辑,如果多个对象的同一个属性值不一样,引擎默认会画一个 - 号
unity版本: 2022.3.14f1c1
管线: URP

写法

主要是通过在进行 GUILayout 绘制前设置 EditorGUI.showMixedValue ,为 true 或 false。来实现。记得在绘制完 mixedvalue 后及时将 EditorGUI.showMixedValue 置回false

        EditorGUI.BeginChangeCheck();
        EditorGUI.showMixedValue =property.hasMixedValue;
        var v=EditorGUILayout.EnumPopup("混合模式",property.floatValue);
        EditorGUI.showMixedValue = false;
        if (EditorGUI.EndChangeCheck())
        {
            property.floatValue=(float)v;
        }

之前写过一个通过样式控制 toggle 内显示 - 号的文章,貌似用现在的方法会更简洁方便。

上一篇 下一篇

猜你喜欢

热点阅读