在安卓系统之中,会出现不同屏幕大小。
在使用的过程中,可能是以不同形态出现。比如,手机模式或者平板模式。
想要使得同一应用在不同的屏幕状态下显示效果如意,即让APP自适应屏幕。
只需要在res目录下创建不同的layout文件夹。
例如:
新建文件夹【 layout-large 】并在其内新建一个名字与主布局一样的xml文件及activity_main.xml 形成 layout-large/ activity_main
layout-large/ activity_main布局包含了两个碎片,即双页模式。其中large就是一个限定符,那些屏幕被认为是large的设备就会自动加载layout-large文件夹下的布局,而小屏幕的设备则还是会加载layout文件夹下的布局。
屏幕特征 | 限定符 | 描述 |
大小 | small | 提供给小屏幕设备的资源 |
normal | 提供给中等屏幕设备的资源 | |
large | 提供给大屏幕设备的资源 | |
xlarge | 提供给超大屏幕设备的资源 | |
分辨率 | ldpi | 提供给低分辨率设备的资源(120dpi以下) |
mdpi | 提供给中等分辨率设备的资源(120dpi到160dpi) | |
hdpi | 提供给高分辨率设备的资源(160dpi到240dpi) | |
xhdpi | 提供给超高分辨率设备的资源(240dpi到320dpi) | |
方向 | land | 提供给横屏设备的资源 |
port | 提供给竖屏设备的资源 |
因此,引入了最小宽度限定符的规则。
最小宽度限定符允许我们对屏幕的宽度指定一个最小指(以dp为单位),然后以这个最小值为临界点,屏幕宽度大于这个值的设备就加载一个布局,屏幕宽度小于这个值的设备就加载另一个布局。
在res目录下新建layout-sw600dp文件夹,然后在这个文件夹下新建activity_main.xml布局