麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 系統 > Android > 正文

Android 獲取屏幕高度,標題高度,狀態欄高度(實例代碼)

2020-04-11 12:01:24
字體:
來源:轉載
供稿:網友

通過View提供的方法獲取高度方式有兩種:

1, 當前顯示的view中直接獲取當前view高寬
2, 通過Activity的getWindow().findViewById(Window.ID_ANDROID_CONTENT)獲取系統當前顯示的 view根(是一個framelayout對象),android繪制會將要繪制的view放置在framelayout中繪制。

Display對象獲取屏幕高寬 :



獲取display對象 Activity中getWindowManager().getDefaultDisplay()
getWidth() 返回顯示界面寬度即屏幕寬度
getHeight() 返回顯示界面高度即屏幕高度

由display對象設置DisplayMetrics高寬值,通過DisplayMetrics對象獲取屏幕高寬,有點多此一舉 :
getWidth() 返回顯示界面寬度即屏幕寬度
getHeight() 返回顯示界面高度即屏幕高度

常用一些值計算:

屏幕高寬
Canvas對象 、display對象和DisplayMetrics可獲取屏幕的高寬

狀態欄高度
View的getWindowVisibleDisplayFrame(Rect outRect)附值outRect后,outRect.top()即是狀態欄高度

標題高度
View的getWindowVisibleDisplayFrame(Rect outRect1)附值outRect后,outRect.height()-view.getheight()即是標題高度。

1.獲取狀態欄高度:

decorView是window中的最頂層view,可以從window中獲取到decorView,然后decorView有個getWindowVisibleDisplayFrame方法可以獲取到程序顯示的區域,包括標題欄,但不包括狀態欄。

于是,我們就可以算出狀態欄的高度了。

復制代碼 代碼如下:

 Rect frame = new Rect();
  getWindow().getDecorView().getWindowVisibleDisplayFrame(frame);
  int statusBarHeight = frame.top;

2.獲取標題欄高度:

getWindow().findViewById(Window.ID_ANDROID_CONTENT)這個方法獲取到的view就是程序不包括標題欄的部分,然后就可以知道標題欄的高度了。

復制代碼 代碼如下:

int contentTop = getWindow().findViewById(Window.ID_ANDROID_CONTENT).getTop();
  //statusBarHeight是上面所求的狀態欄的高度
  int titleBarHeight = contentTop - statusBarHeight

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 精品无吗乱吗av国产爱色 | 欧美国产日韩在线观看成人 | 亚洲国产精品久久久久久久久 | 九九热精品视频在线播放 | 欧美性猛交一区二区三区精品 | 亚洲网站在线观看视频 | 免费国产成人高清在线看软件 | 亚洲一级毛片 | 中文字幕综合在线观看 | av久草 | 四季久久免费一区二区三区四区 | 黄色成人短视频 | 国产精品伦视频看免费三 | 污视频在线免费播放 | 成人区一区二区 | 一级成人欧美一区在线观看 | 蜜桃视频在线免费播放 | 在线a毛片免费视频观看 | 亚州精品天堂中文字幕 | 91精品国产乱码久久久久久久久 | 福利在线小视频 | 国产午夜精品一区二区三区免费 | 国产精品高潮99久久久久久久 | wwwxxx视频 | 成人午夜免费网站 | 欧美老外a级毛片 | 久久精品a一级国产免视看成人 | 一级成人欧美一区在线观看 | 最近国产中文字幕 | 免费观看一区二区三区视频 | 成人在线视频一区 | www噜噜偷拍在线视频 | 久久久久久久久久久久久久久伊免 | 女女久久 | 97久久日一线二线三线 | 双性精h调教灌尿打屁股的文案 | 国语自产免费精品视频在 | 高清国产午夜精品久久久久久 | 免费黄色在线观看网站 | 成年人免费视频播放 | 久久精品9 |