【Android 屏幕适配】屏幕适配通用解决方案 ① ( 定义 dimens.xml 方案 | 使用 ScreenMatch 插件生成不同屏幕分辨率的 dimens.xml 配置 )


参考文档 :





一、屏幕适配通用解决方案



目前存在两种通用的屏幕适配解决方案 :

  • ① 方案一 : 自定义控件 , 自定义 ViewGroup 控件 , 也就是写布局组件 ( LinearLayout / RelativeLayout 等组件 ) 的子类 , 在其中的布局测量 onMeasure 方法中进行控件的测量操作 ;
  • ② 方案二 : 定义 dimens , 给每种 屏幕分辨率 情况都配置一套 dimens.xml 配置 ;




二、ScreenMatch 插件使用



安装 ScreenMatch 插件

选择 菜单栏 / File / Setting 选项 ;

在这里插入图片描述
在 Settings 对话框中的 Plugins 插件面板中 , 搜索 ScreenMatch 插件 , 安装该插件 ;

在这里插入图片描述
等待 ScreenMatch 插件安装完成 ;
在这里插入图片描述

生成 dimens.xml 文件

安装完成后 , 右键点击 Module 项目 , 在弹出的菜单中 , 会有
在这里插入图片描述

在弹出的 " Select Module " 对话框中 选择 app 选项 ;
在这里插入图片描述

首次执行该操作 , 会提示 " 路径下文件找不到 " ;

在这里插入图片描述
会生成如下目录文件 ;
在这里插入图片描述
在工程根目录下生成了 screenMatch_example_dimens.xml 配置文件 , 该配置文件是按照 sw360dp 为标准生成的 ;
在这里插入图片描述
将该 screenMatch_example_dimens.xml 文件 , 重命名为 dimens.xml 文件 , 并且拷贝到 res/values 目录下 ;

如果 res/values/dimens.xml 文件已经存在 , 则将 screenMatch_example_dimens.xml 文件中的内容拷贝到该文件中 ;

在这里插入图片描述

再次 右键点击 Module 应用目录 , 然后在弹出的菜单中 选择 ScreenMatch 选项 ,

在这里插入图片描述

选中 指定 Module 后 , 点击 ok 按钮 ;

在这里插入图片描述
此时会弹出 " Over , adapt successful " 弹窗 ,

在这里插入图片描述
同时会生成下面矩形框中的一批目录文件 ;
在这里插入图片描述

配置 dimens.xml 文件生成选项

base_dp=360 指的是系统默认的标准值为 360dp ;

# Base dp value for screen match. Cut the screen into [base_dp] parts.
# Data type is double. System default value is 360.
# I advise you not to modify the value, be careful !!!!!!!!! _^_  *_*
base_dp=360

match_dp= 用于配置要生成哪些 swxxdp 的 dimens.xml 配置文件 ;

# Also need to match the phone screen of [match_dp].
# If you have another dp values.
# System default values is 240,320,384,392,400,410,411,480,533,592,600,640,662,720,768,800,811,820,960,961,1024,1280,1365
match_dp=

ignore_dp= 用于配置要屏幕哪些配置 ;

# If you not wanna to match dp values above. Write some above values here, append value with "," .
# For example: 811,961,1365
ignore_dp=

猜你喜欢

转载自blog.csdn.net/han1202012/article/details/126389918