愿君学长松,慎勿作桃李。这篇文章主要讲述Android屏幕信息获取相关的知识,希望能为你提供帮助。
android中有时需要获取屏幕的size信息以便对控件位置进行动态控制,最近做了一些研究,现在将获取屏幕大小信息的方法总结如下,可能存在一些地方理解的不全面。
1.getMetrics
java代码
文章图片
- DisplayMetrics dm = new DisplayMetrics();
- activity.getWindowManager().getDefaultDisplay().getMetrics(dm);
- //在没有Activity上下文时可使用如下方法,需要Context上下文
- //dm = context.getResources().getDisplayMetrics();
- int screenwidth = dm.widthPixels; // 宽度
- int screenheight = dm.heightPixels; // 高度
【Android屏幕信息获取】
2.getRealMetrics(注意,该方法仅在API 17以上可用)
Java代码
文章图片
- DisplayMetrics dm = new DisplayMetrics();
- activity.getWindowManager().getDefaultDisplay().getRealMetrics(dm);
- int displaywidth = dm.widthPixels; // 宽度
- int displayheight = dm.heightPixels; // 高度
3.getWindow().getDecorView().getWindowVisibleDisplayFrame(Rect)
Java代码
文章图片
- Rect rect = new Rect();
- activity.getWindow().getDecorView().getWindowVisibleDisplayFrame(rect);
注:所有方法获得的size信息单位均为px
推荐阅读
- 适配器模式 在Android中的简单理解
- Android应用开发中三种常见的图片压缩方法
- Android 高清加载巨图方案 拒绝压缩图片
- Android入门——Bitmap和BitmapFactory
- android WebView详解,常见漏洞详解和安全源码(下)
- Android硬件加速介绍与实现
- 如何在mac本上安装android sdk
- Android: 设置 app 字体大小不跟随系统字体调整而变化
- 译Android 7.0 for Developers