1.一个组件可调整的属性比较多,但是属性之间又有一定的联系,如何自定显示属性
2.代码如下
using UnityEditor;
using LuaFramework;
[CustomEditor(typeof(AppConst))]
public class AppConstInspector : Editor
{
private SerializedObject obj;
private AppConst appConst;
#region 显示属性
private SerializedProperty DebugMode;
private SerializedProperty UpdateMode;
private SerializedProperty LuaBundleMode;
private SerializedProperty IsOpenSubcontractUpdate;
#endregion
private void OnEnable()
{
obj = new SerializedObject(target);
DebugMode = obj.FindProperty("DebugMode");
UpdateMode = obj.FindProperty("UpdateMode");
LuaBundleMode = obj.FindProperty("LuaBundleMode");
IsOpenSubcontractUpdate = obj.FindProperty("IsOpenSubcontractUpdate");
}
public override void OnInspectorGUI()
{
//base.OnInspectorGUI();
appConst = (AppConst)target;
EditorGUILayout.PropertyField(DebugMode);
if (appConst.DebugMode == false)
{
EditorGUILayout.PropertyField(UpdateMode);
EditorGUILayout.PropertyField(IsOpenSubcontractUpdate);
}
EditorGUILayout.PropertyField(LuaBundleMode);
obj.ApplyModifiedProperties();
}
}
3.效果