android与ios的适配,Android及ios适配原理总结

这里通过对比Android及ios系统解决多机型适配的方法,加深适配问题的理解,如果错误,请指正

对已Android系统来说,由于Android的机型很多,屏幕种类各异,为了在不同的Android设备上保持一致的体验,在开发Android的app的时候,需要考虑到app的适配问题。

首先,我们需要明确在不同的Android设备上,造成app显示不一样的原因。具体来说,有两个因素影响显示效果

对于同一张图片,我们以下两个结论:

1 手机屏幕的尺寸相同,如果屏幕的分辨率越大,那么图片显示的就会越小,因为屏幕的像素越大,那么图片在屏幕中占据的空间比例也就越小。

2 手机的分辨率相同,如果屏幕的尺寸越大,那么图片显示的就会越大。

所以,为了保证在不同的机型下,实现相同的显示效果,需要综合这两个因素,即屏幕密度的概念。

先了解一下ppi及dpi的概念:

dpi是dot per inch,每英寸多少点,ppi是 pixel per inch,每英寸像素数,针对显示器的设计时,dpi=ppi(ppi表示显示设备的点密度,dpi表示印刷品点密度)

这样,我们就可以选取一个基准的ppi,然后通过比例计算出目标设备需要显示实际像素点,以保证物理尺寸的一致,在Android系统中有一个根据dpi转换的单位dp(独立设备像素),1dp表示在屏幕点密度为160ppi时1px长度,dp与px的转换公式为px=dp*(ppi/160)通过这样转换,我们即可保证在不同的设备上,实现相同的显示效果。

对于ios系统而言,我了解的不多,通过在网上查看一些相关的知识,在此稍作总结:

在ios中也存在一个抽象的表示尺寸的概念,即点,只不过由于ios的设备差距不是特别大,不需要像android那样通过ppi进行转换计算,同时,4、4s、5、5s、6的ppi都是相同的,虽然宽度及高度有所变化,但是对于图片影响不大,只是布局的及布局的宽高需要处理,但是对于6p而言,它的ppi与之前的设备不同,如果使用同一张图的话,图片显示会变小,所以需要为6p需要更大尺寸的图片。

同时在6及6p上,有一个display zoom的概念,即放大显示,在display zoom的模式下,6会显示5s尺寸的布局,而6p会显示6尺寸的布局,这样会相当于减少了画布的大小,从而达到放大显示的目的,但是这样会造成出来的图像失真。

以上即我的理解,参考的内容如下:

http://www.zhihu.com/question/21220154 (DPI、PPI、DP、PX 的详细计算方法及算法来源是什么?)

http://www.zhihu.com/question/26195746  (切图常说的@1X@2X@3X是什么意思?)

http://www.zhihu.com/question/25504852 (如何评价iOS为大屏优化而做的“双视图/Display Zoom”模式?)

http://www.ui001.com/chicun/

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值