我希望我的应用程序在分辨率足够大且处于横向模式时更改UI的不同部分,并在应用程序运行时检测更改(例如,在移动设备上进行屏幕旋转).
我知道我应该有一个事件听屏幕分辨率(可以通过javascript获得),但我不知道如何做到这一点.如何将事件挂起始终刷新的值?
你要 Window.addResizeHandler
Window.addResizeHandler(new ResizeHandler() {
@Override
public void onResize(ResizeEvent event) {
yourCustomLayoutAdjustmentMethod(event.getHeight(), event.getWidth());
}
});
Run Code Online (Sandbox Code Playgroud)
无需JavaScript!
使用MGWT库(http://code.google.com/p/mgwt/):
导入这些类
import com.googlecode.mgwt.dom.client.event.orientation.OrientationChangeEvent;
import com.googlecode.mgwt.dom.client.event.orientation.OrientationChangeEvent.ORIENTATION;
import com.googlecode.mgwt.dom.client.event.orientation.OrientationChangeHandler;
import com.googlecode.mgwt.ui.client.MGWT;
Run Code Online (Sandbox Code Playgroud)
定义方向处理程序
class MyOrientationChangeHandler implements OrientationChangeHandler {
@Override
public void onOrientationChanged(OrientationChangeEvent event) {
switch (event.getOrientation()) {
case LANDSCAPE:
// handle landscape orientation
return;
case PORTRAIT:
// handle portrait orientation
return;
}
}
}
Run Code Online (Sandbox Code Playgroud)
添加处理程序
MGWT.addOrientationChangeHandler(new MyOrientationChangeHandler ());
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2395 次 |
| 最近记录: |