画面サイズを取得する


アプリケーションを開発する際、端末によってその画面サイズはバラバラです。
アプリケーションが端末の画面サイズを取得することができれば
動的に画面デザインを構成することができます。
詳しくは続きからどうぞ。

アプリケーションから画面サイズを取得するには以下のようにします。

WindowManager wm = (WindowManager)getSystemService(Context.WINDOW_SERVICE);
Display disp = wm.getDefaultDisplay();
int width = disp.getWidth();
int height = disp.getHeight();

getSystemServiceは指定したシステムサービスのハンドルを返します。
この場合「WINDOW_SERVICE」を指定して、WindowManagerのハンドルを取得します。
GPSの値を取得する際にもこのgetSystemServiceを使います(参考

WindowManagerのハンドルを取得したら、WindowManagerのメソッドであるgetDefaultDisplayを使って、
デフォルトのディスプレイオブジェクトdispを取得します。

ディスプレイオブジェクトはgetWidth、getHeightというメソッドを持ちますので、
これらのメソッドを使ってwidth、heightを取得します。
(width、heightの単位はピクセルです)

縦・横と表示を変えても正しくサイズが取得できます。

One Comment