有Android設備的屏幕底部有狀態欄。所以如果我在這些設備上計算包括狀態欄高度在內的絕對位置,佈局將會被破壞。Android獲取狀態欄位置(屏幕頂部或底部)
有沒有一種方法來確定狀態欄的位置,如果它位於屏幕底部的頂部?
有Android設備的屏幕底部有狀態欄。所以如果我在這些設備上計算包括狀態欄高度在內的絕對位置,佈局將會被破壞。Android獲取狀態欄位置(屏幕頂部或底部)
有沒有一種方法來確定狀態欄的位置,如果它位於屏幕底部的頂部?
下面的代碼爲我工作。我只是從another question的答案中找到它。
public static int getTopStatusBarHeight(Activity activity) {
Rect rect = new Rect();
activity.getWindow().getDecorView().getWindowVisibleDisplayFrame(rect);
return rect.top;
}
如果此方法的結果是0,則意味着在狀態欄是在底部,和其它。
本質上它不能完成。他們的立場是絕對的。你可以隱藏/取消隱藏它們。但你不能移動它們。但是,您可以將它們分割:
http://developer.android.com/guide/topics/ui/actionbar.html
那麼這個鏈接將顯示你如何隱藏/顯示一些酒吧:
http://developer.android.com/training/system-ui/status.html
謝謝你的回答,但是你鏈接的圖只包含顏色的元素名稱,我並不真正瞭解如何讓你獲得狀態欄的位置。 –
嘿,你downvoter!我的問題有什麼問題?照顧emplain? :( –