GWT:SplitLayoutPanel UiBinder

时间:2013-04-06 14:23:28

标签: java gwt resize uibinder

我遇到了像here一样的问题。

有没有办法覆盖onResize方法并在uibinder中使用它?

SplitLayoutPanel mainPanel = new SplitLayoutPanel() {
    @Override
    public void onResize() {
        super.onResize();
        //some other resizing stuff
    }           
};

1 个答案:

答案 0 :(得分:0)

是。定义类:

package com.foo;

public class MySplitLayoutPanel extends SplitLayoutPanel() {
  @Override
  public void onResize() {
    super.onResize();
    //some other resizing stuff
  }           
};

然后将类所在的包绑定到您选择的xml命名空间(不会与UiBinder模板中定义的其他命名空间冲突):

<ui:UiBinder xmlns:ui='urn:ui:com.google.gwt.uibinder'
             xmlns:g='urn:import:com.google.gwt.user.client.ui'
             xmlns:foo='urn:import:com.foo'>

然后通过命名空间引用您的类(就像您对常用的g命名空间的其他小部件一样):

<foo:MySplitLayoutPanel />

这是针对UiBinder部分的,但我认为您所链接的答案根本不是解决方案,因为当浏览器窗口调整大小时,也会(并且主要)调用onResize()