サンプルコード
例えば変数に値を入れ込むケースを考えてみたいと思います。変数の名前は固定長で表示をし、設定する値の編集箇所は可変長にしたい場合は以下のように記載します。
固定長の箇所は GUILayout.Width(100)
可変長の箇所は GUILayout.Width(width - 100 - 50)
のように指定するイメージです
[CustomEditor(typeof(BindParameter))] public class BindParameterCustom : Editor { private int index = 0; public override void OnInspectorGUI() { var bindParameter = target as BindParameter; var option = new string[] { "a","b", "c" }; var width = EditorGUIUtility.currentViewWidth; EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("Class Name", GUILayout.Width(100)); index = EditorGUILayout.Popup(index, option, GUILayout.Width(width - 100 - 50)); bindParameter.ClassName = option[index]; EditorGUILayout.EndHorizontal(); } }