Вы правы - сейчас нет способа сделать это. Эта может быть исправлена в будущем выпуске GWT путем введения некоторого пользовательского синтаксиса, как это было сделано для DockLayoutPanel
. Но я сомневаюсь в этом - вы бы хотели написать такой код:
<g:AbsolutePanel ui:field="absolutePanel">
<g:Button x="50px" y="50px">Test</g:Button>
</g:AbsolutePanel>
Однако это конфликтует с "bean" (как в Java Beans; если у вас есть метод getSomethingCool
, вы можете написать somethingCool="kewl"
в коде UiBinder, и он автоматически вызовет соответствующий метод get / set) потому что Button
не имеет setX/Y
метода. Это можно обойти, заменив вызовы setX/Y
соответствующими вызовами существующих методов (позиционирование CSS и т. Д.) Во время компиляции. Но это вводит еще одно пользовательское поведение, зависящее от Widget / Panel для переноса - я думаю, что разработчики GWT хотели бы избежать этого.