[转]Android平台根据分辨率计算屏幕尺寸,基于物理尺寸来验证手机和平板应用合并的可行性
来源:互联网 发布:阿里云 邮件超时 编辑:程序博客网 时间:2024/06/06 03:26
出发点:Android系统本身是支持多种分辨率的,如图1所示,一般情况下要适配不同尺寸的设备只需要做两件事,1. 根据4种不同的屏幕尺寸提供4套UI布局(layout)。 2. 根据4种不同屏幕像素密度(单位英寸的像素值)提供4套界面元素的图片。
图1 Android屏幕分类
而实际应用合并过程中存在的问题是:同一个应用对应的手机和平板界面设计是完全不一样的,如何根据屏幕的大小来决定提供哪一套界面是一件很头疼的事情。
目的:根据分辨率来区分手机和平板的不合理性在于:
1. 分辨率高但是物理屏幕尺寸小的设备(比如三星5.3寸的galaxy NOTE1280*800 手机)采用平板布局后的可点击界面元素太小,很难点中。
2. 分辨率小但是物理屏幕尺寸大的设备采用手机布局后界面元素过大,显得整体UI粗糙。
所以目前通过屏幕尺寸来区分手机和平板相对合理,主要目的是验证如下调整的可行性
分辨率与屏幕尺寸的换算:首先要了解Android分辨率相关基础概念
手机像素密度(density)实际上是以单位英寸160个像素作为参考标准,主要密度有0.75,1,1.5和2,当密度为2时就表示1英寸有320个像素,Android中通过代码可以获取到屏幕的像素值和密度,根据这些值就可以反向算出屏幕的物理尺寸
屏幕尺寸=屏幕对角线的像素值/(密度*160)= / (密度*160)
实践过程:
由于Android设备中获取的密度density本身是个约等于的数值,比如计算出密度的准确值density=1.575,实际在代码中读到的density=1.5, 需要实现一个简单的计算屏幕尺寸的应用在不同设备上验证物理尺寸准确程度,具体代码如下:
实践结果:几个不同设备(手机和平板)的测试结果如下:
结论:手机上根据分辨率反向算出的屏幕物理尺寸比较准确,平板则误差较大,但是结果基本上是大于6寸,以上根据物理尺寸区分手机和平板的方法目前来看是可行的。
- [转]Android平台根据分辨率计算屏幕尺寸,基于物理尺寸来验证手机和平板应用合并的可行性
- Android平台根据分辨率计算屏幕尺寸,基于物理尺寸来验证手机和平板应用合并的可行性
- Android平台根据分辨率计算屏幕尺寸,基于物理尺寸来验证手机和平板应用合并的可行性
- Android平台根据分辨率计算屏幕尺寸,基于物理尺寸来验证手机和平板应用合并的可行性
- Android平台根据分辨率计算屏幕尺寸,基于物理尺寸来验证手机和平板应用合并的可行性
- Android平台根据分辨率计算屏幕尺寸,基于物理尺寸来验证手机和平板应用合并的可行性
- Android平台根据分辨率计算屏幕尺寸,基于物理尺寸来验证手机和平板应用合并的可行性
- Android平台根据分辨率计算屏幕尺寸,基于物理尺寸来验证手机和平板应用合并的可行性
- Android平台根据分辨率计算屏幕尺寸
- 根据手机的分辨率和屏幕尺寸计算手机屏幕的PPI
- iPhone手机的分辨率和物理尺寸
- Android 为什么计算不出准确的屏幕尺寸的原因,及 Android 获得屏幕物理尺寸、密度及分辨率
- Android计算手机真正的物理尺寸
- ios 分辨率 和屏幕物理尺寸
- 屏幕尺寸、密度,分辨率查询网站(手机、平板、显示器)
- android计算pad或手机的分辨率/像素/密度/屏幕尺寸/DPI值的方法
- ****android计算pad或手机的分辨率/像素/密度/屏幕尺寸/DPI值的方法
- android计算pad或手机的分辨率/像素/密度/屏幕尺寸/DPI值的方法
- 转换CRSM返回值到ril上层可处理字串的方法
- 联系人Contact类解析
- 让服务器iis支持.apk文件下载的设置方法
- Android4.0中的按键设备分析
- android区分pad还是phone设备
- [转]Android平台根据分辨率计算屏幕尺寸,基于物理尺寸来验证手机和平板应用合并的可行性
- from torch._C import * ImportError: numpy.core.multiarray failed to import
- [转]android SystemClock设置系统时间需要system权限
- 上层对于kernel进入深睡的处理
- Android中属性动画1----ObjectAnimator的基本使用(平移,缩放,渐变,旋转)
- 【Android】XLIFF的应用
- android中上下层使用socket说明
- android中的manifest文件中的res获取
- spring对jdbc的支持