【Unity】Editor.OnInspectorGUI の ReorderableList の変更は EditorGUI.ChangeCheckScope で検知できない
概要
public override void OnGUI( string searchContext ) { using var changeCheckScope = new EditorGUI.ChangeCheckScope(); m_editor.OnInspectorGUI(); if ( !changeCheckScope.changed ) return; // ReorderableList を変更してもここに来ない }
対策
public override void OnGUI( string searchContext ) { using var changeCheckScope = new EditorGUI.ChangeCheckScope(); var oldArray = ...; m_editor.OnInspectorGUI(); var newArray = ...: if ( !changeCheckScope.changed && newArray.SequenceEqual( oldArray ) ) return; // 配列やリストの変更を SequenceEqual で確認するとここに来られる }