2009-09-16 39 views

回答

13

嘗試

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

其中上下文是Context實例。

默認情況下,保留佈局的FrameLayout水平填充整個顯示(垂直方向可以有狀態欄)。因此,您可以正確使用android:layout_width="fill_parent"來設置最大可能寬度。

2

這裏是一個good answer

mWinMgr.getDefaultDisplay().getWidth(); //的getWidth()和getHeight()方法現在已被棄用

你可以得到寬度和高度如下: 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);

相關問題