Obtenga la resolución de pantalla real en Ice Cream Sandwich
Los dispositivos con Ice Cream Sandwich pueden usar las teclas programables en pantalla, y esto significa que parte del estado de la pantalla se toma con estas teclas. Necesito obtener la resolución real de la pantalla, y no la resolución menos el espacio ocupado por las teclas programables.
He intentado lo siguiente, pero ninguno funciona:
Display display = getWindowManager().getDefaultDisplay();
int width = display.getWidth();
int height = display.getHeight();
Log.d("SCREEN RES", "Width: " + width + ". Height: " + height);
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
height = metrics.heightPixels;
width = metrics.widthPixels;
Log.d("SCREEN RES", "Width: " + width + ". Height: " + height);
Aquí está la salida:
12-19 20:18:42.012: D/SCREEN RES(20752): Width: 1196. Height: 720
12-19 20:18:42.012: D/SCREEN RES(20752): Width: 1196. Height: 720
a resolución de pantalla real es de 1280 x 720 píxeles, no de 1196 x 720 píxeles.
¿Algunas ideas
Edita
Estoy usando el siguiente código para hacer que la aplicación aparezca en pantalla completa:
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);