獲取螢幕的寬高,通常方法如下幾種:
// 獲取螢幕密度(一)
display display = getactivity().getwindowmanager().getdefaultdisplay();
int screenwidth = display.getwidth(); // 螢幕寬
int screenheight = display.getheight(); // 螢幕高
// 獲取螢幕密度(二)
displaymetrics dm = getresources().getdisplaymetrics();
int screenwidth = dm.widthpixels; // 螢幕寬
int screenheight = dm.heightpixels; // 螢幕高
// 獲取螢幕密度(三)
displaymetrics dm = new displaymetrics();
getactivity().getwindowmanager().getdefaultdisplay().getmetrics(dm);
int screenwidth = dm.widthpixels; // 螢幕寬
int screenheight = dm.heightpixels; // 螢幕高
這種方法獲取的螢幕高度包括狀態列高度。
但是這幾個方法有點問題,正常的手機沒毛病,但是android4.0之後有了
虛擬按鍵
,有虛擬按鍵的系統呼叫上面的方法尺寸會減去虛擬按鍵的尺寸,回比。
解決方法
如下:(得到的數值就是一般所說的)
①api 17 之後提供了方法
displaymetrics
dm = new displaymetrics();
getwindowmanager().getdefaultdisplay().getrealmetrics(
dm);
int width =
dm.widthpixels; // 螢幕寬
int height =
dm.heightpixels; // 螢幕高
②在api 17之前通過反射獲取
display display = getwindowmanager().getdefaultdisplay();
displaymetrics dm = new displaymetrics();
@suppresswarnings("rawtypes")
class c;
try catch(exception e)
int width = dm.widthpixels;
int height = dm.heightpixels;
關於獲取Flex Mobile螢幕寬高
1.mobile width and height import flash.display.screen import flash.system.capabilities trace capabilities.screenresolutionx,capabilities.screenresolut...
獲取螢幕的寬高
獲取螢幕長寬常用方法有三種 androidmanifest.xml檔案中,加入supports screens節點,這樣的話,當前的android程式就支援了多種解析度,那麼就可以得到正確的物理尺寸了。方法一 windowmanager wm windowmanager getsystemservi...
關於css寬高問題
問題 span標籤的width和height分別為多少?doctype html html head meta charset utf 8 title bootstrap 例項 標籤頁與膠囊式標籤頁 title head body div style width 400px height 200px...