studio programacion para libros libro edición desarrollo desarrollar aprende aplicaciones android metrics

para - manual de programacion android pdf



Cómo obtener métricas de visualización de pantalla en la clase de aplicación (4)

Si pongo esto en alguna clase de actividad, funciona perfectamente pero, cuando lo puse en mi clase de aplicación, no se puede encontrar el método getWindowManager() . ¿Hay alguna manera de obtener el WindowManager en la clase de aplicación?

Mi clase de aplicación se define así:

public class myApp extends Application {

y en el método de creación tengo esto:

DisplayMetrics dm = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(dm); int width = dm.widthPixels;


Aquí, Context.getResource()

DisplayMetrics dm = getResources().getDisplayMetrics(); int densityDpi = dm.densityDpi;


Prueba esto:

Display display = getWindowManager().getDefaultDisplay(); Log.e("", "" + display.getHeight() + " " + display.getWidth());


También puedes probar esto:

WindowManager wm = (WindowManager) getSystemService(WINDOW_SERVICE); final DisplayMetrics displayMetrics = new DisplayMetrics(); wm.getDefaultDisplay().getMetrics(displayMetrics); int height = displayMetrics.heightPixels; int width = displayMetrics.widthPixels;


final DisplayMetrics dm = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(dm); int width = dm.widthPixels; int height = dm.heightPixels; getWindow().setLayout((int) (width * .8), (int) (height * .5));