سؤال

لديّ 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>

و 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));
 }
}

وأضيفه إلى تطبيقي مثل هذا:

public void onModuleLoad() {
  RootPanel.get().add(new Main());
 }

إنني مذهول. هذا يجب أن يكون سهلا بشكل تافهة. يجب أن أفتقد شيئًا غبيًا. أيه أفكار؟

هل كانت مفيدة؟

المحلول

إضافته إلى RootLayoutPanel.

public void onModuleLoad() {
  RootLayoutPanel.get().add(new Main());
}

ولا تنس استخدام Doctype الصحيح في HTML الخاص بك.

<!DOCTYPE html>
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top