最終更新:
moonlight_aska 2014年12月13日(土) 10:57:44履歴
端末の画面サイズを取得するには, Displayクラスを使用する.
注) 取得できる画面サイズは, タイトルバー及びステータスバーを含んだものである.
注) API Level 13以降は, Display#getSizeメソッドを使用するように変更となった.

注) 取得できる画面サイズは, タイトルバー及びステータスバーを含んだものである.
- DisplaySize.java
- getSystemServiceメソッドで, WINDOW_SERVICEを指定してWindowManagerのインスタンスを取得する.
- WindowManager#getDefaultDisplayメソッドで, Displayクラスのインスタンスを取得する.
- Display#getWidth/getHeightメソッドで, 画面サイズ情報を取得する.
package com.moonlight_aska.android.displaysize;
import android.app.Activity;
import android.os.Bundle;
import android.view.Display;
import android.view.WindowManager;
import android.widget.TextView;
public class DisplaySize extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextView txWidth = (TextView)findViewById(R.id.width_id);
TextView txHeight = (TextView)findViewById(R.id.height_id);
// WindowManagerのインスタンス取得
WindowManager wm = getWindowManager();
// Displayのインスタンス取得
Display disp = wm.getDefaultDisplay();
String width = "Width = " + disp.getWidth();
String height = "Height = " + disp.getHeight();
txWidth.setText(width);
txHeight.setText(height);
}
}
注) API Level 13以降は, Display#getSizeメソッドを使用するように変更となった.
WindowManager wm = (WindowManager)getSystemService(WINDOW_SERVICE);
// ディスプレイのインスタンス生成
Display disp = wm.getDefaultDisplay();
Point size = new Point();
disp.getSize(size);
String width = "Width = " + size.x;
String height = "Height = " + size.y;

WindowsManagerのインスタンス取得に, View#getContextメソッドを使用する.
注) API Level 13以降は, Display#getSizeメソッドを使用するように変更となった.
注) API Level 13以降は, Display#getSizeメソッドを使用するように変更となった.
WindowManager wm = (WindowManager)getContext().getSystemService(Context.WINDOW_SERVICE);
Display disp = wm.getDefaultDisplay();
int width = disp.getWidth();
int height = disp.getHeight();
このページへのコメント
プログラム製作の参考にさせていただきました。
どうもありがとう
確かに... 修正しました.
ご指摘ありがとうございました.
View継承クラスの場合のサンプルコード、括弧が多いですよー。
参考にさせていただいたのでお礼代わりに(笑)