Android不同分辨率适配

时间:2024-03-16 20:13:07

Android 不同分辨率适配

前言

适配可以分为:

  • 布局适配:
    Android布局有 线性布局,相对布局,绝对布局,帧布局。由于绝对布局适配性差,所以极少使用。
    其他三种布局根据需求进行选择,但是就实用性和灵活性而言,使用相对布局将会是更好的解决方案
  • 尺寸适配:
    尺寸布局就是根据不同的尺寸,单独为该尺寸写一个布局,进行适配

重要概念

  • 屏幕尺寸
    含义:手机对角线的物理尺寸
    单位:英寸(inch),1英寸=2.54cm
    Android 手机常见的尺寸有5寸,5.5寸,6寸等
  • 屏幕分辨率
    :手机在横向、纵向上的像素总和
    例如 1080x1920 ,即宽度方向 1080个像素,在高度方向有 1920个像素
    单位:px(pixel)1px = 1像素点
    UI设计师设计图会以px作为统一的计量单位
    Android手机常见的分辨率:320x480、480x800、720x1280、1080x1920
  • 屏幕像素密度
    含义:每英寸的像素点数
    单位:dpi(dots per ich)
    Android不同分辨率适配

横屏和竖屏适配

layout-land 横屏布局
layout-port 竖屏布局

不同分辨率适配(1920x1080)

layout-1920x1080
或者
layout-land-1920x1080
layout-port-1920x1080

注:如果适配的布局文件中,没有当前机型,当前机型会选择相差最小的分辨率的配置文件进行适配

不同分辨率适配(sw600dp,w600dp,h600dp)

layout-sw600dp

sw 代表 smallwidth的意思,当你的屏幕的绝对宽度大于600dp时,屏幕就会自动调用 layout-sw600dp文件夹中的布局。
注意:这里的绝对宽度是指手机的实际宽度,即与手机是否横屏没关系,也就是手机较小的边的长度

layout-w600dp

当你的屏幕的相对宽度大于600dp时,屏幕就会自动调用layout-w600dp文件夹中的布局。
注意:这里的相对宽度是指手机相对于放置的宽度;即当手机竖屏时,为较小边的长度;当手机横屏时,为较大边的长度。

layout-600dp

与layout-w600dp 的使用一样,只是这里指的是相对的高度
当你的屏幕的相对高度大于600dp时,屏幕就会自动调用layout-w600dp文件夹里面的布局。
注意:这里的相对高度是指手机相对放置的高度;即当手机竖屏时,为较长边的长度;当手机横屏时,为较短边的长度。但是这种方式很少用到,因为屏幕在相对高度上,即在纵向上通常能够滚动导致长度变化,而不像横向那样基本固定,因而 这个方法灵活性差google官方文档建议尽量不使用这种方式。