Если вы вызываете это вне Activity, вам нужно передать контекст (или получить его через какой-то другой вызов). Затем используйте это, чтобы получить ваши показатели отображения:
DisplayMetrics metrics = context.getResources().getDisplayMetrics();
int width = metrics.widthPixels;
int height = metrics.heightPixels;
ОБНОВЛЕНИЕ: с уровнем API 17+ вы можете использовать getRealSize
:
Point displaySize = new Point();
activity.getWindowManager().getDefaultDisplay().getRealSize(displaySize);
Если вы хотите, чтобы доступный размер окна, вы можете использовать getDecorView
для вычисления доступной площади, вычитая размер вида декора из реального размера дисплея:
Point displaySize = new Point();
activity.getWindowManager().getDefaultDisplay().getRealSize(displaySize);
Rect windowSize = new Rect();
ctivity.getWindow().getDecorView().getWindowVisibleDisplayFrame(windowSize);
int width = displaySize.x - Math.abs(windowSize.width());
int height = displaySize.y - Math.abs(windowSize.height());
return new Point(width, height);
getRealMetrics
также может работать (требуется уровень API 17+), но я еще не пробовал:
DisplayMetrics metrics = new DisplayMetrics();
activity.GetWindowManager().getDefaultDisplay().getRealMetrics(metrics);