28

我可以得到Android手机的分辨率..?
如果是,那么如何..?
这对我真的很有帮助。。
谢谢。。

4

8 回答 8

43

如果您想要以像素为单位的显示尺寸,您可以使用 getSize:

Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
int width = size.x;
int height = size.y;

此方法是在 Android API 13 中引入的,因此如果您想获取以前 API 的显示指标,请使用:

DisplayMetrics displaymetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(displaymetrics);
int height = displaymetrics.heightPixels;
int wwidth = displaymetrics.widthPixels;

如果您不在 Activity 中,则可以通过WINDOW_SERVICE. 还要确保在 AndroidManifest.xml 中将 minSdkVersion 设置为至少 4 以启用对 display.getWidth() 的调用。

WindowManager wm = (WindowManager) ctx.getSystemService(Context.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();
int width = display.getWidth();  // deprecated
int height = display.getHeight();  // deprecated

编辑:PhoneGap

使用以下计算以像素为单位的显示大小

 function getDeviceDimention() {
        console.log("Device Dimention using PhoneGap");
        console.log("Width = " + window.innerWidth);
        console.log("Height = " + window.innerHeight);
    }
于 2012-07-05T06:19:42.200 回答
10

对于 Cordova / Phonegap,我发现使用

var width = screen.width
var height = screen.height

比使用更可靠

var width = window.innerHeight
var height = window.innerWidth

以获得当前显示器的分辨率。遗憾的是,如果您的标记溢出或没有占用屏幕上的所有可用空间,则后者是不准确的。

于 2012-12-10T10:31:29.123 回答
4

对于phonegap,您可以使用它

您可以使用设备宽度设备高度

<meta name="viewport" content="width=device-width; user-scalable=no" />

您甚至可以像这样使用 jquery 和 jquery mobile 获取设备高度和宽度

var width = $(window).width();
var height = $(window).height();

注意:-在设备准备就绪时执行此操作。

于 2012-07-05T06:40:05.867 回答
3

你可以打电话

Display display = getWindow().getWindowManager().getDefaultDisplay();
Point outSize = new Point();
display.getRealSize(outSize);

outSize.x 是宽度,outSize.y 是高度。希望它有所帮助。

于 2013-06-27T05:27:18.807 回答
1

DisplayMetrics 指标 = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);

祝你好运행운을빈다。

于 2012-07-05T06:14:02.433 回答
1

像这样

Display display = getWindowManager().getDefaultDisplay(); 
int width = display.getWidth(); 
int height = display.getHeight();  

看看这个答案Android: How to get screen dimensions

于 2012-07-05T06:09:39.883 回答
1
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
int width = dm.widthPixels;
int height = dm.heightPixels;

祝你好运!

于 2012-07-05T06:10:19.010 回答
0

你可以得到这样的屏幕分辨率

  Display display = ((WindowManager) getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay();
    int width = display.getWidth(); 
    int height=display.getHeight();
于 2012-07-05T06:19:22.340 回答