https://zhuanlan.zhihu.com/p/103020700
using UnityEditor;
using UnityEditor.Timeline;
using UnityEngine.Playables;
using UnityEngine.Timeline;
using System.Collections.Generic;
using UnityEngine;
[CustomEditor(typeof(TimelineBgmSignal))]
public class TimelineBgmSignalEditor : Editor
{
private TimelineBgmSignal m_signal;
private SerializedObject m_so;
private SerializedProperty m_time;
private SerializedProperty m_pauseOrStop;
private GUIStyle m_tempFontStyle = new GUIStyle();
private void OnEnable()
{
m_tempFontStyle.normal.textColor = Color.yellow;
m_tempFontStyle.fontSize = 20;
m_signal = target as TimelineBgmSignal;
m_so = new SerializedObject(m_signal);
m_time = m_so.FindProperty("m_Time");
m_pauseOrStop = m_so.FindProperty("m_pauseOrStop");
}
public override void OnInspectorGUI()
{
EditorGUILayout.PropertyField(m_time, true);
EditorGUILayout.Space(5);
EditorGUILayout.LabelField("bgm settings", m_tempFontStyle);
EditorGUILayout.Space(5);
EditorGUILayout.PropertyField(m_pauseOrStop, true, GUILayout.Width(500));
m_so.ApplyModifiedProperties();
}
}