题 如何获得Android设备的屏幕分辨率..? [重复]


这个问题在这里已有答案:

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


21
2017-07-05 06:06


起源




答案:


如果您想要显示尺寸(以像素为单位),可以使用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;

如果您不在活动中,则可以通过默认显示获取 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);
    }

39
2017-07-05 06:19



非常感谢你..但我正在使用phonegap ..是否有可能使用javascript ..? - Rikin Thakkar
@RikinThakkar看到更新的答案 - K_Anas
得到它..谢谢..我要去尝试.. - Rikin Thakkar
它正在工作.. Thnx man .. - Rikin Thakkar
由于我是stackoverflow的新手,我不知道这个...所以thnx再次提供信息.. - Rikin Thakkar


对于Cordova / Phonegap,我发现使用了

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

比使用更可靠

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

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


9
2017-12-10 10:31



我同意。在某些设备上要小心,高度和宽度不随显示器旋转。 - Leo


对于phonegap,你可以使用它

您可以使用 装置宽度 和 设备高度

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

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

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

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


4
2017-07-05 06:40



它的工作.. Thnx兄弟.. - Rikin Thakkar
在你的标题中总是提到你想要怎么做。所以合适的人可以帮助你...... Chalo很高兴为你工作。 - Coder_sLaY


你可以打电话

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

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


3
2018-06-27 05:27



这需要API 17。 - Sam


喜欢这个

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

看看这个答案 Android:如何获取屏幕尺寸


1
2017-07-05 06:09





DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
int width = dm.widthPixels;
int height = dm.heightPixels;

祝你好运!


1
2017-07-05 06:10



非常感谢你..但我正在使用phonegap ..是否有可能使用javascript ..? - Rikin Thakkar
哦,我真的不介意。我没有用它。抱歉。 - Ilya Demidov


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

祝你好运 행운을빈다。


1
2017-07-05 06:14





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

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

0
2017-07-05 06:19