安卓手机分辨率、尺寸、像素如何影响布局表现?

分辨率

大家在看手机参数的时候都会关注到分辨率这样一个参数(1080px*1920px),分辨率指的是横纵方向的像素点,影响着成像清晰度。

像素密度

像素密度指的是1英寸含有的像素点数量,那我们也知道手机的英寸参数一般指的是斜对角线的长度,所以计算像素密度时也需要
用斜对角线上的像素值开根号(宽1080px,高1920px,由勾股定理得出斜对角线像素值)差不多2202px /手机尺寸,密度单位是dpi
公式:密度 = √斜对角线像素值/手机尺寸

那分辨率如何影响成像密度呢?简单理解就是相同宽度下,像素点越多肯定越细腻。

DP与PX

因为不同手机分辨率(PX)是不一样的,如果我们指定一个view的宽是360px,那么它在360px的手机里刚好占满屏幕宽度,但在720px的手机上只能占据1/2的宽度,显然这不是想要的。
所以需要用dp,我320dp宽的view在360px的手机上,1dp=1px,刚好占满手机宽度;同样320dp宽的view在720px的手机上,1dp=2px,那么也能占满屏幕宽度,这就符合我们的预期效果了。(数字为举例需要,并不准确)

那问题就是为什么在360px宽的手机和在720px宽的手机上 dp和px的比例是不同的?

这就和像素密度有关了,安卓以160dpi为基准1dp=1px,所以把手机的像素密度dip/160就可以得到dp与px的比例了。dpi的计算方式在上面。

举个例子

假设我有这样一个布局,其中顶部和底部是固定的,视频区域高度随宽度等比进行缩放,减去这些剩下就是四个红色插件的容器了。那要怎么计算公屏处四个插件是否能不重叠的装入公屏区域呢?
在这里插入图片描述

如果一部手机分辨率是1080*1920,尺寸5英寸,像素密度是420
假设ph=1920px,pw=1080px

需要先计算手机的像素密度,根据像素密度得出1dp等于多少px;那这里根据像素密度是420,则1dp=420/160=2.62px
首先公屏高度=手机屏幕高度(ph)- 视频区域高度(随宽度变化) - 头部和底部工具栏固定的高度(大概是150dp2.62=393px)
视频区域高度是根据宽度等比缩放的,所以先得出视频高度 = 9
pw/16 ,我这里举例宽是1080px,则高大概是607px
所以公屏高度=1920-607-393=920px

各插件(banner 70dp+大插件150dp+大神专属活动插件120dp+小插件80dp=420dp,另外算上间距差不多是450dp了)累计高度是450dp2.62=1179px,所以在手机分辨率是10801920,尺寸5英寸的情况下,公屏高度(920px)不够容纳插件总高度(1179px)就会有一些重叠。

如果一部手机分辨率是10801920,尺寸6.43英寸,则像素密度是342,1dp=2.13px
那么公屏高度=1920-607-319=1100
插件总高度=450
2.13=958
那么在手机分辨率是1080*1920,尺寸6.43英寸手机上就不会有重叠情况

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值