GWT TabLayoutPanel始终处于折叠状态

Mat*_*nik 3 gwt uibinder gwt-tablayoutpanel

我有一个简单的TabLayoutPanel用UIBinder制作.选项卡呈现但没有内容.它在HTML中,但它总是折叠(元素上设置的内联样式使其崩溃).据我所知,这与我见过的每个TabLayoutPanel示例相同.其他小部件渲染得很好.该项目只是默认HTML和代码被剥离的基本示例.

XML是:

<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
 xmlns:g="urn:import:com.google.gwt.user.client.ui">
 <g:TabLayoutPanel barHeight='22' barUnit='PX'>
  <g:tab>
   <g:header>Tab A</g:header>
   <g:HTML>
   asdf
   <p>asdfasdf</p>
   </g:HTML>
  </g:tab>
  <g:tab>
   <g:header>Tab B</g:header>
   <g:Label>blah</g:Label>
  </g:tab>
  <g:tab>
   <g:header>Tab C</g:header>
   <g:Label>blah</g:Label>
  </g:tab>
 </g:TabLayoutPanel>
</ui:UiBinder>
Run Code Online (Sandbox Code Playgroud)

而Java是:

public class Main extends Composite {

 private static MainUiBinder uiBinder = GWT.create(MainUiBinder.class);

 interface MainUiBinder extends UiBinder<Widget, Main> {
 }

 public Main() {
  initWidget(uiBinder.createAndBindUi(this));
 }
}
Run Code Online (Sandbox Code Playgroud)

我将它添加到我的应用程序中,如下所示:

public void onModuleLoad() {
  RootPanel.get().add(new Main());
 }
Run Code Online (Sandbox Code Playgroud)

我惊呆了.这应该很简单.我一定是想念一些愚蠢的事.有任何想法吗?

pat*_*hed 6

将其添加到RootLayoutPanel.

public void onModuleLoad() {
  RootLayoutPanel.get().add(new Main());
}
Run Code Online (Sandbox Code Playgroud)

并且不要忘记在你的HTML中使用正确的DOCTYPE.

<!DOCTYPE html>
Run Code Online (Sandbox Code Playgroud)