2009-09-16 13 views

Respuesta

13

Trate

mWinMgr = (WindowManager)context.getSystemService(Context.WINDOW_SERVICE); 
int displayWidth = mWinMgr.getDefaultDisplay().getWidth(); 

donde el contexto es Context ejemplo.

Por defecto, el FrameLayout en el que se mantiene su diseño, llena toda la pantalla en posición horizontal (vertical puede tener barra de estado). Para que pueda establecer el ancho máximo posible usando android:layout_width="fill_parent" correctamente.

2

Aquí es una good answer:

mWinMgr.getDefaultDisplay().getWidth(); // getWidth() y getHeight() están obsoletos ahora

Usted puede obtener la anchura y la altura de la siguiente manera: original

Display display = getWindowManager().getDefaultDisplay(); 
Point size = new Point(); 
display.getSize(size); 
int width = size.x; 
int height = size.y; 
1
DisplayMetrics size = new DisplayMetrics(); 
     getWindowManager().getDefaultDisplay().getMetrics(size); 
     int w = size .widthPixels; 
     int h = size .heightPixels; 
1
WindowManager window = (WindowManager) getSystemService(Context.WINDOW_SERVICE); 
DisplayMetrics dm = new DisplayMetrics(); 
window.getDefaultDisplay().getMetrics(dm);   

devicewidth = (dm.widthPixels);

Cuestiones relacionadas