Hi all,
So I tried to create a property drawer using CreatePropertyGUI and use it in my project. If I try to use it in an inspector driven by IMGUI I get the “No GUI Implemented” error. I’ve read already read that It’s probably because of the IMGUI/UiElement Mix. Is there any solution yet? I’ll provide my scripts and a simple example project. Please mind that for the real one I’m bound to Unity 2020.16.3.
public class BaseClass : MonoBehaviour
{
[SerializeField] private List<Property> Properties;
}
[Serializable]
public class Property
{
[SerializeField] private bool isOn;
[SerializeField] private string name;
[SerializeField] private float length;
}
[CustomEditor(typeof(BaseClass))]
public class BaseInspector : Editor
{
public override void OnInspectorGUI()
{
DrawDefaultInspector();
}
}
[CustomPropertyDrawer(typeof(Property))]
public class PropertyDrawer : UnityEditor.PropertyDrawer
{
public override VisualElement CreatePropertyGUI(SerializedProperty property)
{
var container = new VisualElement();
var isOnField = new PropertyField(property.FindPropertyRelative("isOn"));
var nameField = new PropertyField(property.FindPropertyRelative("name"));
var lengthField = new PropertyField(property.FindPropertyRelative("length"));
container.Add(isOnField);
container.Add(nameField);
container.Add(lengthField);
return container;
}
}

7704052–965137–IMGUI_UIElem_Mix.zip (34.6 KB)