方向

2013-03-04 33 views
0

後預測屏幕尺寸,我想弄清楚的屏幕尺寸,我會在我的應用程序開始時在縱向和橫向。方向

我可以用Display.getRealSize()得到實際顯示大小,然後計算導航欄高度的情況下,有一個。

但是,在具有600dp或更低設備的設備中,導航欄可以具有不同的高度(取決於方向),甚至可以在橫向模式下向右移動。

我的應用程序將需要知道這些參數,開始時(應用程序連接到當它連接接收這些尺寸的雲服務器 - 所以我真的需要知道這些應用程序開始工作之前)。

我目前的解決辦法是這樣的:

Resources res = Resources.getSystem(); 
id = res.getIdentifier("navigation_bar_height", "dimen", "android"); 
int navigation_bar_height = res.getDimensionPixelSize(id); 

雖然這個作品,這是從來沒有使用Android的內部資源一個很好的做法。

是否有任何其他方式知道在不同的方向屏幕的尺寸之前你旋轉設備?

回答

0

對於devices.try的尺寸越來越下面的代碼

DisplayMetrics dm = new DisplayMetrics(); 
    getWindowManager().getDefaultDisplay().getMetrics(dm); 
    final int height=dm.heightPixels; 
    final int width=dm.widthPixels; 
+0

它沒有回答我的問題。這給出了屏幕指標,但我想考慮導航和狀態欄高度。這些參數在不同的方向上可能有不同的大小,我想在旋轉設備之前先了解它們。 – EyalBellisha 2013-03-12 08:59:56

+0

您是否最終找到解決方案? – Frank 2014-01-09 08:44:32