GWT UI Binder, использующий чистый HTML - PullRequest
2 голосов
/ 03 сентября 2010

Есть ли способ работать с чистым HTML в GWT UIBinder.

Проблема, с которой я сталкиваюсь, заключается в том, что нам нужно заключить стиль в фигурные скобки.Любая ссылка / статья / книга, обрабатывающая UIBinder в деталях, была бы полезна.

Я уже видел статьи на сайте GST

Ответы [ 3 ]

2 голосов
/ 03 сентября 2010

Имя стиля (имя класса CSS) должно быть заключено в фигурные скобки, например, <div class="{style.example}">...</div>, когда имя скрыто в GWT.GWT делает это, когда вы используете CssResource .Это также имеет место, когда вы объявляете это в блоке <ui:style> в вашем файле .ui.xml:

<ui:UiBinder ...>
  <ui:style>
    .example {
      ...
    }
  </ui:style>

  <div class="{style.example}">
     ...
  </div>
</ui:UiBinder>

В отличие от этого, когда вы объявляете свой класс CSS в простом файле CSS (который выссылка на страницу хоста HTML), тогда имя не будет заключено в фигурные скобки.В этом случае вы просто используете его как

<ui:UiBinder ...>
  <div class="example">...</div>
</ui:UiBinder>
0 голосов
/ 12 августа 2014

Я искал ответ на этот вопрос через Google и приземлился здесь.
Я нашел решение, которое сработало для меня здесь:
http://blog.sortedset.com/googles-app-engine-java/gwt-uibinder-helloworld-with-html/


Основы:

Используйте

interface MyUiBinder extends UiBinder<Element, MobileUI>

вместо

interface MyUiBinder extends UiBinder<Widget, MobileUI>


Используйте

setElement(uiBinder.createAndBindUi(this));

вместо

initWidget(uiBinder.createAndBindUi(this));


Используйте

RootPanel.getBodyElement().appendChild(myUiBinder.getElement());

вместо

RootPanel.get().add(myUiBinder);
0 голосов
/ 03 сентября 2010

Вы можете использовать его таким образом, который близок к чистому HTML:

<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
<ui:UiBinder xmlns:ui='urn:ui:com.google.gwt.uibinder'
  ui:generateFormat='com.google.gwt.i18n.rebind.format.PropertiesFormat'
  ui:generateKeys="com.google.gwt.i18n.rebind.keygen.MD5KeyGenerator"
  ui:generateLocales="default"
  xmlns:g='urn:import:com.google.gwt.user.client.ui'>

  <ui:style>

    ... CSS ...

  </ui:style>

  <g:HTMLPanel>

    ... HTML and GWT controls ...

  </g:HTMLPanel>

</ui:UiBinder>
...