方法一:
displaymetrics dm = getresources().getdisplaymetrics();
int widthpixels = dm.widthpixels; // 螢幕的寬度
方法二:
displaymetrics displaymetrics = new displaymetrics();
getwindowmanager().getdefaultdisplay().getmetrics(displaymetrics);
screenwidth = displaymetrics.widthpixels;
方法三:
windowmanager wm = (windowmanager) this.getsystemservice(context.window_service);
displaymetrics dm = new displaymetrics();
wm.getdefaultdisplay().getmetrics(dm);
int width = dm.widthpixels; // 螢幕寬度(px)
int height = dm.heightpixels; // 螢幕高度(px)
float density = dm.density; // 螢幕密度(0.75 / 1.0 / 1.5)
int densitydpi = dm.densitydpi; // 螢幕畫素密度dpi(120 / 160 / 240)
// 螢幕寬度演算法:螢幕寬度(px)/螢幕密度 px = dip * (dpi / 160) || px = dip * density
int screenwidth = (int) (width / density); // 螢幕寬度(dp | dip)
int screenheight = (int) (height / density);// 螢幕高度(dp | dip)
還有其他方法:一般使用前面幾種方法較多,下面兩種方法目前已經過時,不建議用
windowmanager wm = (windowmanager) this
.getsystemservice(context.window_service);
int width = wm.getdefaultdisplay().getwidth();
int height = wm.getdefaultdisplay().getheight();
windowmanager wm1 = this.getwindowmanager();
int width1 = wm1.getdefaultdisplay().getwidth();
int height1 = wm1.getdefaultdisplay().getheight();
Android獲取螢幕寬度的4種方法
方法一 windowmanager wm windowmanager this getsystemservice context.window service int width wm.getdefaultdisplay getwidth int height wm.getdefaultdispla...
Android 獲取螢幕寬度和高度的幾種方法
方法一 display defaultdisplay getwindowmanager getdefaultdisplay point point new point defaultdisplay.getsize point int x point.x int y point.y log.i tag...
c 擷取螢幕的幾種方法
1 private void button1 click object sender,eventargs e 2 dllimport user32 charset charset.ansi,setlasterror true,exactspelling true private static ext...