2012-06-25 62 views
1

我有如何使用FILL_PARENT佈局獲取對話框的寬度/高度?

android:theme="@android:style/Theme.Dialog" 

的活動,以顯示它作爲浮動窗口。我也有一條線

getWindow().setLayout(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT); 

而且我需要此窗口的寬度/高度來正確顯示內容。

我測試過的四個選項中,並沒有得到一個答案:

//1 
int width = getWindowManager().getDefaultDisplay().getWidth(); 

//2 
int width = getWindow().getDecorView().getWidth(); 

//3 
getWindow().getDecorView().getWindowVisibleDisplayFrame(rect); 

//4 
int width = getWindow().getAttributes().width; 

謝謝!

回答

2

使用此功能:

private int getting_screen_width(Dialog dialog) 
    { 
    DisplayMetrics dm = new DisplayMetrics(); 
    dialog.getWindow().getWindowManager().getDefaultDisplay().getMetrics(dm); 
    String width = ""+dm.widthPixels ; 
    dm = null; 
     return (Integer.parseInt(width)); 

這個返回屏幕寬度

+0

你的函數值返回屏幕寬度,但我需要彈出窗口的寬度。活動的對話框樣式顯示爲彈出窗口,W(和H)大約小於screen-W(-H)10px。 – nullreferenceexception

+0

PLZ看看我的編輯 –

+0

最後的編輯也做同樣的:返回屏幕寬度,但我需要實際的窗口寬度) – nullreferenceexception

相關問題