如何让GWT RequiresResize.onResize响应缩放?
缩放后不调用onResize 当前GWT实施:如何让GWT RequiresResize.onResize响应缩放?,gwt,resize,Gwt,Resize,缩放后不调用onResize 当前GWT实施: public native void initWindowResizeHandler() /*-{ var oldOnResize = $wnd.onresize; $wnd.onresize = $entry(function(evt) { try { @com.google.gwt.user.client.Window::onResize()(); } finally {
public native void initWindowResizeHandler() /*-{
var oldOnResize = $wnd.onresize;
$wnd.onresize = $entry(function(evt) {
try {
@com.google.gwt.user.client.Window::onResize()();
} finally {
oldOnResize && oldOnResize(evt);
}
});
}-*/;
我找到的唯一可用于轮询的解决方案
@Override
protected void onLoad() {
Scheduler.get().scheduleFixedDelay(new RepeatingCommand() {
@Override
public boolean execute() {
if (listOuter.getOffsetWidth() != knownWidth)
onResize();
return SomeListViewImpl.this.isAttached();
}
}, 200);
}
在Window.onResize和缩放时调用onResize
@Override
public void onResize() {
knownWidth = listOuter.getOffsetWidth();
GWT.log("resize: " + knownWidth);
//some magic
}
这在哪个浏览器上不适用。一般来说,捕获一个调整大小的工具对meI来说很好,我只在Chrome for mac上试用过;看起来“没有办法主动检测是否有变焦。”