美文网首页
Android屏幕适配一

Android屏幕适配一

作者: Hengtao24 | 来源:发表于2018-10-23 10:42 被阅读0次

    系列文章

    前言

    由于Android系统的开放性,各大手机厂商都会对Android系统进行定制,导致Android系统设备的碎片化,出现各种屏幕尺寸的设备,为了让APP能够比较美观的显示在不同尺寸、分辨率、像素密度的设备上,那就要在开发的过程中对屏幕进行适配。本篇先介绍一些相关概念,下篇介绍具体的适配方法。

    术语和概念

    • 什么是屏幕尺寸、屏幕分辨率、屏幕像素密度?
    • 什么是dp、dip、sp?他们之间的关系是什么?
    • 什么是mdpi、hdpi、xhdpi、xxhdpi、xxxhdpi?如何计算和区分?

    屏幕尺寸

    • 指的是手机屏幕对角线的长度,单位是英寸,换算关系是1英寸=2.54厘米,比如我们常说的小米6的屏幕尺寸是5.15寸

    屏幕分辨率

    • 指的是屏幕上物理像素的总数,单位px,比如小米6分辨率是1920*1080
    • 适配时不会直接使用分辨率;而只应关注通用尺寸和密度组指定的屏幕尺寸及密度

    屏幕密度

    • 屏幕物理区域中的像素量;通常称为dpi(每英寸点数),对角线每英寸的像素点的个数
    • Android将所有屏幕密度分组为六种通用密度ldpi(低),hdpi(高),xhdpi(超高),xxhdpi(超超高),xxxhdpi(超超超高)
    • 计算公式如下:


      dpi计算公式

    height和width即为长宽的像素,平方和即为对角线的像素个数,size即屏幕尺寸,如下图所示:


    dpi计算公式

    密度无关像素 dp(dip)

    • dp也叫dip,是device independent pixels
    • 在定义UI布局时使用的虚拟像素单位,以密度无关方式表示布局位置,以确保再不同密度的屏幕上正常显示UI
    • dp单位转换为屏幕像素:px = dp * (dpi / 160),例如,在240dpi屏幕上,1dp等于1.5px

    sp

    • sp,即scale-independent-pixels,与dp类似,但是可以根据文字大小首选项进行放缩,是设置字体大小的御用单位

    mdpi、hdpi、xhdpi、xxhdpi、xxxhdpi

    • 修饰了drawable文件夹和value文件夹,用来区分不同像素图片和dimen值,不同像素图片需要放在不同文件夹下

      名称 dpi范围
      mdpi 120 ~ 160
      hdpi 160 ~ 240
      xhdpi 240 ~ 320
      xxhdpi 320 ~ 480
      xxxhdpi 480 ~ 640

      在设计图标时:对于五种主流像素密度(mdpi, hdpi, xhdpi, xxhdpi, xxxhdpi)
      应按照(2:3:4:6:8)的比例进行缩放,(1x, 1.5x, 2x, 3x, 4x)

      例如:尺寸为48x48dp的图标,表示在mdpi的屏幕上其尺寸应为48x48px
      在hdpi的屏幕上其实际大小是mdpi的1.5倍(72x72px)… 依此类推

    相关文章

      网友评论

          本文标题:Android屏幕适配一

          本文链接:https://www.haomeiwen.com/subject/yjmozftx.html