Android如何获取屏幕的分辨

在实际的项目中,我们经常要得到当前屏幕的分辨率,进行机型适配,得到分辨率其实很简单,主要有两种方法。


方法一:

Display mDisplay = getWindowManager().getDefaultDisplay();
int W = mDisplay.getWidth();
int H = mDisplay.getHeight();
Log.i("Main", "Width = " + W);
Log.i("Main", "Height = " + H);

Display是在android.view.Display包中的。

方法二:

DisplayMetrics mDisplayMetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(mDisplayMetrics);
int W = mDisplayMetrics.widthPixels;
int H = mDisplayMetrics.heightPixels;
Log.i("Main", "Width = " + W);
Log.i("Main", "Height = " + H);

DisplayMetrics是在android.util.DisplayMetrics包中的,getWindowManager()是Activity中的方法。

时间: 2024-10-14 15:38:06

Android如何获取屏幕的分辨的相关文章

Android中获取屏幕长宽的方法

package com.kale.screen; import android.annotation.SuppressLint; import android.app.Activity; import android.graphics.Point; import android.os.Bundle; import android.util.Log; import android.view.Display; public class MainActivity extends Activity {

android DisplayMetrics 获取屏幕分辨率

Android 提供DisplayMetircs 类可以很方便的获取分辨率.下面介绍 DisplayMetics 类: Andorid.util 包下的DisplayMetrics 类提供了一种关于显示的通用信息,如显示大小,分辨率和字体. 为了获取DisplayMetrics 成员,首先初始化一个对象如下: DisplayMetrics metrics = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetri

Android 强制获取屏幕方向

最近在做照相机功能,简单的封装系统相机,遇到一个问题就是无法获取屏幕的当前方向导致屏幕旋转之后无法获得正确的方向,所以照片方向不对. 在网上查了一下都是通过windowManager的Display或Configuration的getOrientation方法获取当前屏幕方向.但是问题来了,两种方法要求Activity不能固定方向,且需要系统打开自动旋转才能获取正确的值,否则会返回一个固定值. 搜来搜去也就只有这两种答案,我考虑只能用监听方向传感器来实现了,但是android orientati

Android 获取屏幕尺寸与密度

android中获取屏幕的长于宽,参考了网上有很多代码,但结果与实际不符,如我的手机是i9000,屏幕大小是480*800px,得到的结果却为320*533 结果很不靠谱,于是自己写了几行代码,亲测一下 测试参数: 测试环境: i9000(三星) 物理屏幕:480*800px density :1.5 测试代码: [java] view plaincopyprint? // 获取屏幕密度(方法1) int screenWidth  = getWindowManager().getDefaultD

Android 获取屏幕尺寸与密度(转载)

android中获取屏幕的长于宽,参考了网上有很多代码,但结果与实际不符,如我的手机是i9000,屏幕大小是480*800px,得到的结果却为320*533 结果很不靠谱,于是自己写了几行代码,亲测一下 测试参数: 测试环境: i9000(三星) 物理屏幕:480*800px density :1.5 // 获取屏幕密度(方法1) int screenWidth  = getWindowManager().getDefaultDisplay().getWidth(); // 屏幕宽(像素,如:4

动态获取屏幕尺寸

android中获取屏幕的长于宽,参考了网上有很多代码,但结果与实际不符,如我的手机是i9000,屏幕大小是480*800px,得到的结果却为320*533 结果很不靠谱,于是自己写了几行代码,亲测一下 测试参数: 测试环境: i9000(三星) 物理屏幕:480*800px density :1.5 测试代码: [java] view plaincopyprint? // 获取屏幕密度(方法1) int screenWidth  = getWindowManager().getDefaultD

Android分享笔记(1) 获取屏幕尺寸,包括状态栏

一大波干货来袭,屏幕尺寸各种获得,状态栏尺寸可正确获得,亲测. package com.elyar.app.util.measure; import java.lang.reflect.Field; import android.app.Activity; import android.util.DisplayMetrics; public class DisplayMeasure {  /**   * Note:个人经验不服来辩<br>   * 只有activity可以使用getWindow

Android获取屏幕尺寸

有些时候,我们需要获取Android手机或Pad的屏幕的物理尺寸,以便于界面的设计或是其他功能的实现.下面就介绍讲一讲如何获取屏幕的物理尺寸:从网上找过不少资料,发现获取屏幕尺寸并不是很复杂的编程操作,下面的代码即可获取屏幕的尺寸.在一个Activity的onCreate方法中,写入如下代码: DisplayMetrics metric = new DisplayMetrics();getWindowManager().getDefaultDisplay().getMetrics(metric)

Android获取屏幕实际高度跟显示高度,判断Android设备是否拥有虚拟功能键

一般的获取屏幕尺寸,但是不包括虚拟功能高度 /** * 获取屏幕尺寸,但是不包括虚拟功能高度 * * @return */ public int getNoHasVirtualKey() { int height = getWindowManager().getDefaultDisplay().getHeight(); return height; } 但是今天我们测试找我就说你的webview界面有问题呀下面怎么一块空白,我看看就发现空白的手机是华为的有软键盘的那种 我们这个方法获取的高度不包