最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android 獲取屏幕高度,標(biāo)題高度,狀態(tài)欄高度(實(shí)例代碼)

 更新時(shí)間:2013年11月02日 09:29:06   作者:  
getWindow().findViewById(Window.ID_ANDROID_CONTENT)這個(gè)方法獲取到的view就是程序不包括標(biāo)題欄的部分,然后就可以知道標(biāo)題欄的高度了

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

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

Display對(duì)象獲取屏幕高寬 :



獲取display對(duì)象 Activity中g(shù)etWindowManager().getDefaultDisplay()
getWidth() 返回顯示界面寬度即屏幕寬度
getHeight() 返回顯示界面高度即屏幕高度

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

常用一些值計(jì)算:

屏幕高寬
Canvas對(duì)象 、display對(duì)象和DisplayMetrics可獲取屏幕的高寬

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

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

1.獲取狀態(tài)欄高度:

decorView是window中的最頂層view,可以從window中獲取到decorView,然后decorView有個(gè)getWindowVisibleDisplayFrame方法可以獲取到程序顯示的區(qū)域,包括標(biāo)題欄,但不包括狀態(tài)欄。

于是,我們就可以算出狀態(tài)欄的高度了。

復(fù)制代碼 代碼如下:

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

2.獲取標(biāo)題欄高度:

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

復(fù)制代碼 代碼如下:

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

相關(guān)文章

最新評(píng)論

罗江县| 潜江市| 新龙县| 黄浦区| 长沙县| 四川省| 瓦房店市| 舟曲县| 天台县| 上思县| 拉孜县| 凤山市| 兰坪| 阳泉市| 翁牛特旗| 灌南县| 邢台县| 明星| 泽州县| 新乐市| 元江| 清镇市| 灵山县| 尤溪县| 大丰市| 云和县| 祁连县| 扶绥县| 浑源县| 黄平县| 富裕县| 会东县| 磴口县| 沐川县| 土默特左旗| 图木舒克市| 崇文区| 会理县| 肃宁县| 方城县| 航空|