2014-09-18 58 views

回答

1

這應該工作:

Resources resources = context.getResources(); 
int resourceId = resources.getIdentifier("navigation_bar_height", "dimen", "android"); 
if (resourceId > 0) { 
    return resources.getDimensionPixelSize(resourceId); 
} 
return 0; 
+0

感謝u代表response.Its前檢查內部版本沒有工作。它返回0,即使該設備具有軟導航佈局。 – Nas 2014-09-18 17:16:28

0
DisplayMetrics metrics = new DisplayMetrics(); 

爲了讓屏幕規格wiithout軟導航佈局

getActivity().getWindowManager().getDefaultDisplay() 
        .getMetrics(metrics); 
int usableHeight = metrics.heightPixels; 

爲了讓屏幕規格與軟導航佈局

getActivity().getWindowManager().getDefaultDisplay() 
        .getRealMetrics(metrics); 
int realHeight = metrics.heightPixels; 

當您從realHeight中減去可用高度時,會得到軟導航佈局的實際高度。

注意:僅當Api級別大於或等於17時,getRealMetrics()方法纔會起作用,否則它將不起作用。因此,越來越顯示指標

相關問題