为了更好的让应用程序的界面能适应不同手机的屏幕大小,有时候我们在开发中使用相对于屏幕实际大小的方法来设定布局中各个空间的位置跟大小,通过下面的方法可以获得Android手机实际屏幕分辨率大小。
首先我们需要用到的是DisplayMetrics这个类,它可以为我们获得手机屏幕属性,这里将其所在类导入。
import android.util.DisplayMetrics;
得到实例对象。
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
得到手机屏幕高度:
dm.heightPixels;
得到手机屏幕宽度:
dm.widthPixels;
得到以上手机屏幕的高度跟宽度后,即可以通过这两个值按照比例还设定程序布局中空间的大小。
=========================
实现的程序如下:
在布局文件main.xml中添加一个TextView对象,一个Button对象。其中TextView对象用来显示获得的分辨率值,Button对象是当点击时获取分辨率。main.xml的代码如下:
-
<?xmlversion="1.0"encoding="utf-8"?>
-
<LinearLayoutxmlns:Android="http://schemas.android.com/apk/res/android"
-
Android:orientation="vertical"
-
Android:layout_width="fill_parent"
-
Android:layout_height="fill_parent"
-
>
-
<TextView
-
Android:id="@+id/tv"
-
Android:layout_width="fill_parent"
-
Android:layout_height="wrap_content"
-
Android:text="手机分辨率为:"/>
-
<Button
-
Android:id="@+id/btnOK"
-
Android:layout_width="fill_parent"
-
Android:layout_height="wrap_content"
-
Android:text="获取手机分辨率"/>
-
</LinearLayout>
在TestActivity中的代码如下:
-
publicclassTestActivityextendsActivity{
-
-
privateTextViewtv;
-
privateButtonbtn;
-
-
-
privateDisplayMetricsdm;
-
-
publicvoidonCreate(BundlesavedInstanceState){
-
super.onCreate(savedInstanceState);
-
setContentView(R.layout.main);
-
-
tv=(TextView)findViewById(R.id.tv);
-
btn=(Button)findViewById(R.id.btnOK);
-
btn.setOnClickListener(newView.OnClickListener(){
-
-
publicvoidonClick(Viewv){
-
dm=newDisplayMetrics();
-
getWindowManager().getDefaultDisplay().getMetrics(dm);
-
-
StringstrPM="手机屏幕分辨率为:"+dm.widthPixels+"*"+dm.heightPixels;
-
tv.setText(strPM);
-
}
-
});
-
}
-
-
}
运行程序后,当我们点击Button按钮时,可以看到下面的效果图:
分享到:
相关推荐
获取手机屏幕大小,屏幕分辨率,屏幕密度,导航栏高度,标题栏高度
本文实例讲述了Android编程获取手机屏幕分辨率大小的方法。分享给大家供大家参考,具体如下: import android.app.Activity; import android.os.Bundle; import android.util.DisplayMetrics; import android....
我的手机是小米6x,屏幕大小是1080乘2160。刚开始我把MuMu模拟器界面大小调至1080乘2160,运行效果会是这样: –这一切看起来似乎很正常的样子,但是在android studio的布局文件的布局情况只能与模拟器运行效果、...
我们可以通过使用类DisplayMetrics来获取手机屏幕的分辨率大小。DisplayMetrics类是获取手机屏幕各种属性的关键类。下面通过例子来展示如何获取手机屏幕的分辨率。 在布局文件main.xml中添加一个TextView对象,一个...
Android屏幕大小和精度介绍包括:多分辨率支持,术语和概念,支持的屏幕分辨率范围
Android 屏幕自适应方向尺寸与分辨率,包括屏幕界面布局、多分辨率支持、获取屏幕尺寸、屏幕横屏与竖屏等,android 模拟器横屏,android 虚拟机横屏,android 判断横屏,android 禁止横屏,android 强制横屏,...
rk3399添加HDMI分辨率以及屏幕旋转。内含代码和修改记录
获取屏幕宽度(分辨率PX) 获取屏幕高度(分辨率PX) 获取屏幕Density 获取屏幕DPI 设置屏幕唤醒状态 获取屏幕亮度 拨打电话(将号码带到拨号界面,不直接拨出) 发送短信 发送彩信 打开URL 获得小区识别码(CellID),即无线...
本文实例讲述了Android获取手机屏幕大小的方法。分享给大家供大家参考,具体如下: 这里主要用了三个对象TextView ,Button ,以及DisplayMetrics ,其中Displaymetrics 是取得手机屏幕大小的关键类,这个例子非常的...
'获取手机屏幕大小' size_str = os.popen('adb shell wm size').read() if not size_str: print('请安装 ADB 及驱动并配置环境变量') sys.exit() m = re.search(r'(\d+)x(\d+)', size_str) if m: return "{...
取得屏幕分辨率大小 ,对获取到的屏幕高度扣除下方Button高度,定义缩小按钮onClickListener 和onClickListener放大按钮的监听事件,然后再分别定义图片缩小和图片放大的method,设置设置图片缩小和放大的比例,...
Android 获取屏幕尺寸实例代码 实现代码: /** * <supports android:smallScreens=true android:normalScreens=true android:largeScreens=true android:resizeable=true android:anyDensity=true> * <uses ...
在使用html5在android下做开发的时候,要获取屏幕实际的大小,直接上代码,可以通过如下代码测试。 复制代码 代码如下:<html> [removed] function a(){ [removed]( “屏幕分辨率为:”+screen.width+”*”+...
实例042: 自动获取手机屏幕的分辨率 109 实例043: 自动获取手机电池的剩余电量 112 实例044: 来电时自动发送信息提醒 115 实例045: 获取手机存储卡的容量 119 实例046: 操作存储卡和内存卡中的数据 122 实例047...
5.5.1 处理不同屏幕大小和分辨率的问题 5.5.2 androidpixmap:人物的像素 5.5.3 androidgraphics:满足绘图需求 5.5.4 androidfastrenderview 5.6 androidgame:合并所有内容 5.7 小结 第6章 mr. nom...
修复屏幕480*320分辨率地图字体过大 修复scrollView滚动黑屏 修复TabHost切换问题 修复ItemizedOverlay onTap(GeoPoint p, MapView mapView)错误 修复2.2系统pop图片在hdpi文件夹下显示错误问题 ...
鉴于市场上用户的手机型号、种类、屏幕分辨率等参差不齐,传统方式根据主流系统分别开发相应的系统耗时又耗力,为了高效开发并节约开发项目成本,本文采用Android+HTML5相结合的方式进行移动端Web系统的设计研发工作...
|--屏幕相关之Display类获取屏幕尺寸和分辨率 |--屏幕适配之ScrollView |--屏幕适配之像素dp和px之间转换 |--工具类之Log的封装类 |--工具类之不同log打印的封装 |--工具类之开启新的Activity |--布局加载器的获取 |...