我怎樣才能得到沒有狀態欄的屏幕高度(像素)&操作欄或者如果任何機構告訴如何獲得狀態欄和操作欄的高度,我也會有所幫助。我已經找到了屏幕高度,但它包括狀態欄的操作欄&。我使用支持庫v7的行動bar.I在網上搜索,但這些解決方案不適合我。如何獲得沒有狀態欄和操作欄的屏幕高度(像素)?
回答
GET狀態條的高度,你可以喜歡:
Rect rectangle = new Rect();
Window window = activity.getWindow();
window.getDecorView().getWindowVisibleDisplayFrame(rectangle);
int statusBarTop = rectangle.top;
int contentViewTop = window.findViewById(Window.ID_ANDROID_CONTENT).getTop();
int statusbarHeight = Math.abs(statusBarTop - contentViewTop);
和什麼有關行動吧,actionbarsherlock有常數值爲:abs__action_bar_default_height。也許你應該嘗試在支持庫中找到那樣的動作吧
p.s.無論如何,由於您知道狀態欄高度,因此您可以通過減去活動的主佈局屏幕X值和狀態欄高度值來獲取操作欄高度。它看起來是這樣的:
mMainLayout.getViewTreeObserver().addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
Rect rectangle = new Rect();
Window window = getWindow();
window.getDecorView().getWindowVisibleDisplayFrame(rectangle);
int statusBarHeight = rectangle.top;
int contentViewTop = window.findViewById(Window.ID_ANDROID_CONTENT).getTop();
int statusbarHeight = Math.abs(statusBarHeight - contentViewTop);
int[] location = {0,0};
mMainLayout.getLocationOnScreen(location);
int actionbarheight = Math.abs(location[0] -statusBarHeight);
Toast.makeText(MainActivity.this, actionbarheight + "", 1).show();
}
});
這是寫在「飛」,只是給你一個想法如何做到這一點。
我使用支持庫v7 appcompat顯示操作欄。感謝您的回覆 – user3302257
在這裏「contentViewTop」狀態欄和操作欄的總高度? – user3302257
否,contentViewTop是活動屏幕的頂部(帶有操作欄,但沒有狀態欄) – OFFmind
- 1. 沒有狀態欄,動作條和標籤的屏幕高度
- 2. 如何獲得屏幕高度減去操作欄?
- 3. Phonegap獲取工作區的屏幕高度(屏幕減去狀態欄)
- 4. 如何獲取狀態欄和軟鍵按鈕欄的高度?
- 5. 如何獲取操作欄和通知欄的高度
- 6. 透明操作欄和狀態欄
- 7. 全屏沒有導航和狀態欄
- 8. 如何獲得corona sdk的狀態欄高度?
- 9. 如何獲得第三方鍵盤的狀態欄高度? (iOS)
- 10. 在顯示狀態欄之前獲取高度狀態欄?
- 11. 如何透明軟鍵欄和透明狀態欄的高度?
- 12. 沒有狀態欄和軟鍵的Android屏幕尺寸
- 13. 狀態欄的高度?
- 14. 如何修改狀態欄的高度?
- 15. 狀態欄高度viewDidLoad
- 16. iPhone X狀態欄高度
- 17. 有狀態欄的高度是100%
- 18. 如何檢測雙高度狀態欄?
- 19. Android應用程序全屏幕,沒有標題欄,也沒有操作欄
- 20. viewWillTransitionToSize和錯誤的導航欄和狀態欄框架高度
- 21. 屏幕鎖定時的狀態欄android
- 22. 半透明的黑色狀態欄沒有工具欄或操作欄
- 23. 如何去android全屏幕沒有狀態欄和renderMode設置爲直接?
- 24. 如何使用透明狀態欄獲取全屏幕背景?
- 25. 以編程方式進行屏幕截圖,沒有狀態欄
- 26. BlackBerry - 狀態欄重疊屏幕
- 27. 如何獲得實際屏幕高度?
- 28. 如何在狀態欄高度變化時得到通知?
- 29. 如何設置默認操作欄的高度和寬度?
- 30. 沒有空間的小屏幕寬度的操作欄溢出菜單項
使用DisplayMetrics類獲取寬度和高度。 – Loganathan
我已經使用此課程並能夠找到整個屏幕高度,包括狀態欄和操作欄。請讓我知道如何得到沒有狀態欄和操作欄的屏幕高度。感謝 – user3302257