Android 官方屏幕适配之ScreenMatch

背景:

Android 项目的一个app需要适配手机+平板,为了一套UI和可以适配2个不同屏幕,记录一个适配的技巧:

前提,使用这个框架:GitHub - wildma/ScreenAdaptation: :fire:一种非常好用的 Android 屏幕适配------smallestWidth 限定符适配 https://www.jianshu.com/p/1302ad5a4b04

场景1:一套UI适配手机+平板

1.1 以手机的设计稿为准;

1.2 screenMatch.properties,base_dp=414 (414为设计稿的宽度)

1.3 生成的dimens.xml只要这些就够,多的全部删除。

复制代码
match_dp=240,320,384,392,400,410,411,414

场景2:手机和平板分开适配

2.1 layout文件写2个

2.2 screenMatch.properties,base_dp=414 为手机的设计稿为准,平板的宽度在蓝湖上要转换成414,和手机保持一致;

2.3 然后就可以根据各自的设计稿设计,程序运行时候动态判断要加载那个layout文件

2.4 生成的dimens.xml按照默认的生产,尽量全,不要删除。

match_dp=240,320,384,392,400,410,411,414,480,533,592,600,640,662,711,720,768,800,811,820,938,960,961,1024,1280,1365

复制代码

最好的适配效果是第2种,但是都需要开发2套UI,工作量大,要求不高的按照第1套来就行,

个别有问题的,在代码中判断平板再动态调整一下。

相关推荐
白雪落青衣11 小时前
buuoj course 1详细解析
android
恋猫de小郭11 小时前
Android 发布全新性能分析器,实用性和性能大升级
android·前端·flutter
Kapaseker12 小时前
为什么 Java 的数组需要 new 出来
android·java·kotlin
黄林晴12 小时前
颠覆开发!Google AI Studio 一句话生成原生 Android App
android·google io
恋猫de小郭12 小时前
Flutter 3.44 发布啦,超级大版本更新!!!
android·flutter·ios
zb2006412012 小时前
Laravel10.x重磅升级:新特性全解析
android
2601_9574188012 小时前
深入解析Android相机有线连接:PTP与MTP协议栈实现原理与实践
android·数码相机·智能手机
努力努力再努力wz12 小时前
【QT入门系列】QWidget 六大常用属性详解:windowOpacity、cursor、font、focus、toolTip 与 styleSheet
android·开发语言·数据结构·c++·qt·mysql·算法
撩得Android一次心动12 小时前
C语言基础笔记3【个人用】
android·c语言·开发语言·笔记
小离a_a13 小时前
uniapp小程序封装圆环显示比例数据
android·小程序·uni-app