2011-11-11 15 views
5

चलाते समय विभिन्न स्क्रीन संकल्पों का पता लगाएं, मैं चाहता हूं कि मेरा ऐप यूआई के विभिन्न हिस्सों को बदलने के लिए चाहे जब संकल्प काफी बड़ा हो और लैंडस्केप मोड पर हो, और ऐप चल रहा हो, तो बदलावों का पता लगाएं (मोबाइल डिवाइस पर स्क्रीन रोटेशन, उदाहरण के लिए)।जीडब्ल्यूटी -

मुझे पता है कि मुझे एक स्क्रीन स्क्रीन रिज़ॉल्यूशन (जिसे जावास्क्रिप्ट के माध्यम से प्राप्त किया जा सकता है) सुनना चाहिए, लेकिन मुझे नहीं पता कि यह कैसे करें। मैं हमेशा एक ताज़ा मूल्य पर एक घटना कैसे लटका सकता हूं?

उत्तर

6

आप Window.addResizeHandler चाहते

Window.addResizeHandler(new ResizeHandler() { 

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

कोई JavaScript आवश्यक!

5
साथ 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; 

एक ओरिएंटेशन हैंडलर

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