いくつかの良い装飾を施したDPの観点から画面の幅と高さを取得します。
ステップ1:インターフェースを作成する
public interface ScreenInterface {
float getWidth();
float getHeight();
}
ステップ2:インプリメンタークラスを作成する
public class Screen implements ScreenInterface {
private Activity activity;
public Screen(Activity activity) {
this.activity = activity;
}
private DisplayMetrics getScreenDimension(Activity activity) {
DisplayMetrics displayMetrics = new DisplayMetrics();
activity.getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
return displayMetrics;
}
private float getScreenDensity(Activity activity) {
return activity.getResources().getDisplayMetrics().density;
}
@Override
public float getWidth() {
DisplayMetrics displayMetrics = getScreenDimension(activity);
return displayMetrics.widthPixels / getScreenDensity(activity);
}
@Override
public float getHeight() {
DisplayMetrics displayMetrics = getScreenDimension(activity);
return displayMetrics.heightPixels / getScreenDensity(activity);
}
}
ステップ3:アクティビティの幅と高さを取得します。
Screen screen = new Screen(this); // Setting Screen
screen.getWidth();
screen.getHeight();