2

有没有办法在 GWT UIBinder 中使用纯 HTML。

我看到的问题更多是我们必须将样式包裹在花括号中。任何详细处理 UIBinder 的链接 /article/book 都会有所帮助。

我已经在 GST 网站上看过文章

4

3 回答 3

2

样式名称(CSS 类名称)必须放在大括号中,例如<div class="{style.example}">...</div>,当名称被 GWT 混淆时。当您使用CssResource时,GWT 会执行此操作。<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>
于 2010-09-03T14:27:13.730 回答
0

我一直在通过谷歌寻找这个问题的答案并登陆这里。
我在这里找到了适合我的解决方案: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);
于 2014-08-12T14:01:37.887 回答
0

您可以以接近纯 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>
于 2010-09-03T12:19:53.527 回答