В скрипте редактора зарезервированный прямоугольник получается с помощью метода GUILayoutUtility.GetRect (на самом деле этот шаг передается третьей стороной, поэтому я не могу его изменить), а затем мне нужно нарисовать элементы управления внутри этого прямоугольника с помощью методов GUILayout.*. Я рассматривал возможность использования метода GUILayout.BeginArea, но в результате внутренние элементы управления не видны. Как мне решить эту проблему?
Код: Выделить всё
[CustomEditor(typeof(Foo))]
public class TestAreaEditor : Editor
{
public override void OnInspectorGUI()
{
var rect = GUILayoutUtility.GetRect(100f, 100f);
GUI.Box(rect, "Box");
UserDraw(rect);
}
public void UserDraw(Rect rect)
{
GUILayout.BeginArea(rect);
GUILayout.Button("Button");
GUILayout.EndArea();
}
}
public class Foo : MonoBehaviour
{
}
Ожидаемое:
Фактическое: