一种应用软件用户界面与显示设备的适配方法组成比例

技术编号:12781806 阅读:66 留言:0更新日期:2016-01-28 00:51
本发明专利技术公开了一种应用软件用户界面与显示设备的适配方法,所述方法根据预设的基准分辨率设计用户界面中视图的尺寸,采用像素px进行标注;应用软件启动时,计算运行该应用软件的当前设备的分辨率与预设的基准分辨率的比值;根据计算得到的比值,对用户界面中视图进行等比例缩放,按照等比例缩放后的视图进行显示。本发明专利技术的方法降低了用户界面适配的复杂度,大大节省了开发的时间。同时对于市面上新出现的设备,即使其分辨率不同、屏幕密度不同,也同样能够正常进行适配,适配性好。

【技术实现步骤摘要】

本专利技术属于计算机
,尤其涉及。
技术介绍
随着互联网的发展,以及智能手机的普及,各种移动互联网应用软件应运而生,使人们的生活异常便利并丰富多彩。然而手机厂商也百家齐放,各种品牌的手机眼花缭乱。由于各个手机厂商的生产标准不同,手机的屏幕大小、屏幕分辨率各不相同。这给应用软件的开发者带来了极大的不便,开发一款应用软件,需要考虑到在不同手机上呈现的效果。手机的屏幕分辨率、屏幕像素密度,是直接影响显示效果的两大重要因素。开发者在设计UI效果图时,除了会给出整体的效果图外,还会在效果图上给出标注,表明一个UI布局的大小,以及前后左右的距离空隙,这个大小和空隙都是用像素px (pixel)进行标注。例如某个UI布局的固定像素宽度为ΙΟΟρχ,那么在任何大小的屏幕上,显示的宽度都是ΙΟΟρχ。这样在大屏幕的手机上,该UI看起来就会相对显示的较小。为了使得一个UI在不同大小的手机屏幕上等比例显示,现有技术更推荐使用设备独立像素 dip (device independent pixel)来代替 px 作为单位,dip = (dpi/160) *px,其中像素密度dpi (dots per inch)是指在水平或垂直方向上每英寸距离具有的像素数量。可见如果设置UI的宽度是100dip,那在根据dip和px的转换公式,在160dpi设备上显示的是100px,在240dpi设备上显示的是150px,从而UI在不同显示屏幕上得到了等比例的放大。然而采用dip来替代,开发人员需要额外进行一次单位换算。即使如此,对于屏幕尺寸相同、像素密度不同的设备,显示效果却是不一样的。比如,1280*800、dpi为240的手机,某个UI布局宽度为100dip,转换成像素为150px ;那在1280*800、dpi为160的设备上,这个UI布局的宽度应该为150dip,才能使得像素值为150px。所以为了解决这样的问题,开发人员就会为这种情况新增配置文件。当配置文件增多以后,出现修改某个显示问题的时候,往往要同步修改对应的多只配置文件所以开发人员在开发应用软件时,经常需要耗费很多精力时间来解决屏幕适配问题。经常需要各种分辨率的手机,来试运行应用软件,来检测是否达到预期效果;并且使用配置文件的方式,不能一次性解决所有的问题,只能发现多少解决多少,未来市场上有可能还会出现各种不同屏幕规格的手机,使得开发的应用软件适配存在潜在的隐患。
技术实现思路
本专利技术的目的是提供,以解决上述
技术介绍
中提到的技术问题,能够解决在所有手机上的适配问题。为了实现上述目的,本专利技术技术方案如下:—种应用软件用户界面与显示设备的适配方法,所述方法包括:根据预设的基准分辨率设计用户界面中视图的尺寸,采用像素px进行标注;应用软件启动时,计算运行该应用软件的当前设备的分辨率与预设的基准分辨率的比值;根据计算得到的比值,对用户界面中视图进行等比例缩放,按照等比例缩放后的视图进行显示。本专利技术的一种实现方式,所述对用户界面中视图进行等比例缩放,包括步骤:逐个提取用户界面中各个视图;分别根据提取的视图的尺寸,用计算得到的比值进行等比例缩放。本专利技术的另一种实现方式,所述方法包括还包括步骤:将用户界面的顶层视图作为总的视图,其他视图作为该总的视图的子视图封装为一个总的视图;则所述对用户界面中视图进行等比例缩放,包括步骤:提取所述总的视图;遍历总的视图及其子视图的尺寸,用计算得到的比值进行等比例缩放。后一种方法将子视图封装在顶层视图中成为一个总的视图,在缩放时,只需要传入封装的总的视图,开发者不需要关心有多少个视图需要缩放,更加简单。其中所述用户界面中视图的尺寸包括视图宽度、视图高度、视图内边距、视图外边距。进一步地,所述计算运行该应用软件的当前设备的分辨率与预设的基准分辨率的比值,计算公式如下:宽度比值=当前设备分辨率宽度/基准分辨率宽度;高度比值=当前设备分辨率高度/基准分辨率高度。进一步地,所述根据计算得到的比值,对用户界面中视图进行等比例缩放,计算公式如下:缩放后视图宽度=缩放前视图宽度*宽度比值;缩放后视图高度=缩放前视图高度*高度比值。进一步地,所述视图内边距、视图外边距分别包括左、右、上、下四个属性,对于左、右属性,其对应于视图的宽度方向,分别对左、右属性通过宽度比值进行等比例缩放;而对于上、下属性,其对应于视图的高度方向,分别对上、下属性通过高度比值进行等比例缩放。本专利技术提出的,利用像素px作为单位,基于基准分辨率对视图尺寸进行标注,在程序启动时,通过当前设备屏幕分辨率与基准分辨率的比值实现指定视图的整体等比例缩放。本专利技术的方法降低了用户界面适配的复杂度,帮助开发人员省去大量的单位转换过程、针对不同机型的文件配置以及测试过程,大大节省了开发的时间。同时对于市面上新出现的设备,即使其分辨率不同、屏幕密度不同,也同样能够正常进行适配,适配性好。【附图说明】图1为本专利技术适配方法的流程图。【具体实施方式】下面结合附图和实施例对本专利技术技术方案做进一步详细说明,以下实施例不构成对本专利技术的限定。如图1所示,本实施例,包括:步骤S1、根据预设的基准分辨率设计用户界面中视图的尺寸,采用像素px进行标注。开发人员首先选择一个目标设备,可以是市场上最流行的机型,例如其分辨率为1280*720的设备,将该设备的分辨率作为预设的基准分辨率。从而根据预设的基准分辨率为基准来设计应用软件用户界面效果图,并直接用px来标注用户界面中各视图的尺寸,本实施例中称为像素尺寸,不需要进行换算。用户界面中视图有文字视图(Text View)、图片视图(Image View)等,它们都是基于View实现的。在实际的开发中,用户界面中各视图在layout布局文件中,应用软件启动后,可以将layout布局文件转化成视图View图层呈现出来。开发人员将各视图的像素尺寸直接填入到View视图的属性中,View视图的属性包括视图宽度(width)、视图高度(height)、视图内边距(padding)、视图外边距(margin)。其中:width在layout中可以通过设置view的android: layout_width属性来定义;height在layout中可以通过设置view的android: layout_heigh当前第1页1 2 本文档来自技高网
...

【技术保护点】
一种应用软件用户界面与显示设备的适配方法,其特征在于,所述方法包括:根据预设的基准分辨率设计用户界面中视图的尺寸,采用像素px进行标注;应用软件启动时,计算运行该应用软件的当前设备的分辨率与预设的基准分辨率的比值;根据计算得到的比值,对用户界面中视图进行等比例缩放,按照等比例缩放后的视图进行显示。

【技术特征摘要】

【专利技术属性】
技术研发人员:毛晓飞
申请(专利权)人:上海健保科技有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1