2011-11-11 2 views
5

해상도가 충분히 크고 가로 모드로되어있을 때 내 앱이 UI의 다른 부분을 변경하고 앱 실행 중에 변경 사항을 감지하도록하고 싶습니다 (모바일 장치에서 화면 회전, 예를 들어).GWT - 실행 중 다른 화면 해상도 감지

나는 이벤트가 (자바 스크립트를 통해 얻을 수있는) 화면 해상도를 들어야한다는 것을 알고 있지만 어떻게 해야할지 모르겠다. 항상 상쾌한 가치로 이벤트를 중단하려면 어떻게합니까?

답변

6

당신은

Window.addResizeHandler(new ResizeHandler() { 

    @Override 
    public void onResize(ResizeEvent event) { 
     yourCustomLayoutAdjustmentMethod(event.getHeight(), event.getWidth()); 
    } 
}); 

없음 자바 스크립트가 필요 Window.addResizeHandler를 원한다! MGWT 라이브러리 (http://code.google.com/p/mgwt/)와

5

:

수입이 클래스

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; 

는 핸들러 추가 오리엔테이션 핸들러

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; 

     } 
    } 
} 

을 정의

MGWT.addOrientationChangeHandler(new MyOrientationChangeHandler()); 
+0

훌륭한 솔루션! – confile