I want to make a two-column UI in unity to manage a pair of fields so I made a custom UI. Howerver, I came up with this inconvenient view and can’t help myself. This is what it looks like.
160812-custom-ui.png

My trouble is: I can’t remove the “Element” tag. Is there a way to remove them?
Besides, I’d like to know how to add a little space between these two columns.

This is my code in my custom editor:

public override void OnInspectorGUI()
    {
        serializedObject.Update();

        EditorGUILayout.PropertyField(_itemNumber);

        GUILayout.BeginHorizontal();
        GUILayout.BeginVertical();

        GUILayout.Label("Item Name");

        for (int i=0; i<_itemNumberToShow; i++)
        {
            SerializedProperty itemProperty = _items.GetArrayElementAtIndex(i);

            EditorGUILayout.PropertyField(itemProperty);
        }

        GUILayout.EndVertical();

        GUILayout.BeginVertical();
        GUILayout.Label("Drop Chance");

        for(int i=0; i<_itemNumberToShow; i++)
        {
            SerializedProperty chanceProperty = _chances.GetArrayElementAtIndex(i);

            if (chanceProperty.floatValue < 0)
                chanceProperty.floatValue = 0;
            EditorGUILayout.PropertyField(chanceProperty);
        }

        GUILayout.EndVertical();
        GUILayout.EndHorizontal();

        if (_itemNumber.intValue < 0)
            _itemNumber.intValue = 0;

        serializedObject.ApplyModifiedProperties();
    }

,I want to make a two-column UI in unity to manage a pair of fields so I made a custom UI. Howerver, I came up with this inconvenient view and can’t help myself. This is what it looks like.

160812-custom-ui.png

My trouble is: I can’t remove the “Element” tag. Is there a way to remove them?
Besides, I’d like to know how to add a little space between these two columns.

This is my code in my custom editor(I did’t use property drawer for it didn’t seem to work):

public override void OnInspectorGUI()
        {
            serializedObject.Update();

            EditorGUILayout.PropertyField(_itemNumber);

            GUILayout.BeginHorizontal();
            GUILayout.BeginVertical();

            GUILayout.Label("Item Name");

            for (int i=0; i<_itemNumberToShow; i++)
            {
                SerializedProperty itemProperty = _items.GetArrayElementAtIndex(i);

                EditorGUILayout.PropertyField(itemProperty);
            }

            GUILayout.EndVertical();

            GUILayout.BeginVertical();
            GUILayout.Label("Drop Chance");

            for(int i=0; i<_itemNumberToShow; i++)
            {
                SerializedProperty chanceProperty = _chances.GetArrayElementAtIndex(i);
                if (chanceProperty.floatValue < 0)
                    chanceProperty.floatValue = 0;
                EditorGUILayout.PropertyField(chanceProperty);
            }

            GUILayout.EndVertical();
            GUILayout.EndHorizontal();

            if (_itemNumber.intValue < 0)
                _itemNumber.intValue = 0;
            serializedObject.ApplyModifiedProperties();
        }

Thank you for reading!

EditorGUILayout.PropertyField accepts a 2nd argument as label. Try with GUIContent.none.