Я пробовал это....
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
int fullscreenheight = metrics.heightPixels;
int fullscreenwidth = metrics.widthPixels;
и....
Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
int width = size.x;
int height = size.y;
Gnex имеет дисплей 720 × 1280. Возвращаемый результат для ширины/высоты (в зависимости от ориентации курса) никогда не будет 1280. Я думал, что это может иметь какое-то отношение к экранной панели навигации в Ice Cream Sandwich, поэтому я скрываю это с помощью
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);
... и затем запустил поток, который непрерывно регистрирует размер/ширину экрана. Даже после того, как панель навигации ICS полностью исчезла... размер экрана никогда не будет сообщать о значении 1280. Я бы получил такие цифры:
width = 720
height = 1184
Как получить истинное разрешение экрана устройства в ICS?
Причина, по которой мне нужно это значение, - это то, что мое приложение воспроизводит видео, и я хотел бы, чтобы видео занимало весь экран, когда устройство находится в альбомной ориентации. Теперь я знаю, что вы думаете, почему бы просто не дать видеоизображению значение "match_parent" для высоты/ширины? Причина в том, что мои видеоролики имеют множественные пропорции, и я хотел бы иметь возможность рассчитать правильный размер видео в зависимости от всей ширины экрана.