ScreenMatch适配方案和PxCook配合使用踩坑记录
首先声明:我会踩坑,是因为我对Android屏幕适配和PxCook使用了解的不到位,并不是说他们本身存在什么问题。。。
先说说PxCook(像素大厨),真是个好东西,UI设计师给到开发人员的设计图,都是px值标注,而使用PxCook可以自动将px转成Android开发适用的dp值,并且可以切换不同dpi查看对应的dp值。
关于ScreenMatch,关于他的用法,网上已经有很多介绍了,我就不再多少,接下来,主要说说他们两个如何配合使用;
在ScreenMatch配置文件中,需要填写base_dp(基准值)、match_dp(需要适配的值)、ignore_dp(不需要适配的值)、、、
当时就让我很懵逼,base_dp到底应该填多少,设计图支持这么多种尺寸(mdpi、hdpi、xhdpi、、、)。
重点建议1:设计图只需要选择一种dpi就可以,然后右边就会自动计算出UI图的对应宽高dp值,
重点建议2:ScreenMatch 最小宽度适配符,选择宽和高中最小的尺寸:例:1280dp×720dp,选择720dp,不管是横屏设备还是竖屏设备都要选择宽高最小值。
重点建议3:将选好的最小dp值填入base_dp,之后就根据这个尺寸下的UI图标注的dp值编写界面。
然后将想要适配的屏幕对应的最小宽度dp填入match_dp中。
特定设备屏幕适配:需要自己去计算需要适配的最小限度符大小,
使用adb 命令:
adb shell wm density 获取设备屏幕density值 (例:240)
adb shell wm size 获取屏幕分辨率 (例1920×1080)
计算 sw = 1080 /(240/160)= 720 至于为什么除160 自己查一哈
所以将720填入match_dp中。
AS有UI预览功能,但是我在开发TV界面时,发现预览只能选择1080p Xhdpi 和 720p tvdpi两种,总是预览界面与显示不匹配,原因是 我没有适配 xhdpi尺寸,xhdpi对应的最小限定符值为 540dp。当生成value-sw540dp资源文件时,预览界面与实际运行的效果相差无几。
重点建议4: 一旦选定base_dp值后,不要再去切换PxCook的dpi。
之后,pxCook显示多少dp值,xml就使用多少dp值,运行后 系统会自动根据设备的density值选择合适的value资源文件。
ScreenMatch适配方案和PxCook配合使用踩坑记录相关推荐
- 【MathType安装】Office2019+MathType7.4.8.0+踩坑记录+最终使用方案
使用Office2019安装MathType7.4.8.0屡屡碰壁,最终使用的解决方案不同于网络上的大多数方法.尽管当前记录的解决方案还不完美.未做到一劳永逸,但能用就行. MathType安装包获取 ...
- Dubbo3的Triple协议踩坑记录
Triple协议踩坑记录 Triple协议 Triple 协议是 Dubbo3 提出的基于 HTTP2 + gRPC 的开放协议,完整兼容 gRPC over HTTP/2,旨在解决 Dubbo2 私 ...
- 为Jupyter notebook配置R kernel过程及踩坑记录
为Jupyter notebook配置R kernel过程及踩坑记录 注意:本文为作者安装过程及折腾的过程,内容比较冗杂,如果读者想直接创建一个属于自己的子环境则参考: 如下文章: anaconda下 ...
- 【踩坑记录】mybatis-plus的insert方法,默认会生成一个uuid作为主键,导致类型不一致,存入数据库报错
[踩坑记录]mybatis-plus的insert方法,默认会生成一个uuid作为主键,导致类型不一致,存入数据库报错 报错记录 解决方案 推荐方案 使用uuid作为主键,修改id的类型为bigint ...
- sonar覆盖率怎么统计的_实战|Java 测试覆盖率 Jacoco插桩的不同形式总结和踩坑记录(上)...
本文为霍格沃兹测试学院优秀学员关于 Jacoco 的小结和踩坑记录.测试开发进阶学习,文末加群. 一.概述 测试覆盖率是老生常谈的话题.因为我测试理论基础不是很好,这里就不提需求.覆盖率等内容,直奔主 ...
- mvn exec: java_实战|Java 测试覆盖率 Jacoco插桩的不同形式总结和踩坑记录(下)
本文为霍格沃兹测试学院优秀学员关于 Jacoco 的小结和踩坑记录.测试开发进阶学习,文末加群. 六.注意事项汇总 修改 JAVA_OPTS 参数时,如果位置不对,可能造成代理无法启动. java - ...
- 日常踩坑记录-汇总版
开发踩坑记录,不定时更新 心得 RTFM 严谨的去思考问题,处理问题 严格要求自己的代码编写习惯与风格 注意 单词拼写 20200207 mybatis plus 自带insert插入异常 sql i ...
- webview进行下载踩坑记录
webview下载操作的踩坑记录 背景记录 由于公司需要, 需要在在webview中执行下载操作, 而且下载完成之后还需要跳转到自动安装页面~~~~ 接下来就是踩坑报告 1.webview执行下载操作 ...
- 微信vue路由跳转兼容_Vue微信公众号开发踩坑记录
需求 微信授权登录(基于公众号的登录方案) 接入JS-SDK实现图片上传,分享等功能 现状及难点 采用的Vue框架,前后端分离模式(vue工程仅作为客户端),用户通过域名访问的是客户端,但是微信授权中 ...
最新文章
- 协议分析中的TCP/IP网络协议
- PIL.Image convert to numpy array
- lambdas 排序_Java8 Lambdas:解释性能缺陷的排序
- socket接收时信号量阻塞了会丢数据吗_浅谈Java网络编程——非阻塞I/O
- Vue 返回记住滚动条位置详解
- MCGSpor软件下载及安装教程
- 双线性插值GPU加速
- 日语N5名词整理:单词按发音汇总
- window计算机桌面的组成,Windows 10桌面的组成,Win10桌面介绍
- 使去中心化媒体网络相关联的NFT元数据标准
- python做数据透视表_利用Python进行数据分组/数据透视表
- 分析方法10---AARRR模型分析方法
- 群晖日历同步到android,用群晖calander日历做华为手机、ipad、mac三方通讯录和日历同步 2020-12-28...
- Mac操作系统-软件安装
- java全文检索word中的内容_搜索引擎时对WORD,EXCEL,PDF,POWERPOINT文件全文检索的总结...
- office 论文 页码_毕业论文word里面怎么弄以下这些页码?第一页不显示。 第二三页是I II ,四页开始以下是1234。求详细方法...
- 林深时见鹿,海蓝时见鲸
- 求任意多边形面积-有向面积
- 基于Python读取Excel表格文件数据并转换为字典dict格式
- 肖特基、整流、开关、快恢复二极管的区别
热门文章
- win10无限重启_Win 10出现错误代码:0xc0000001
- xlistview+imageloder+图片缓存到内存卡
- MATLAB涡旋检测算法,基于VG算法
- 面试官:说说Git中 fork, clone,branch这三个概念,有什么区别?
- Jakarta Commons Logging(JCL)开发手记
- 《前端之路》之三 数组的属性 操作方法(上)
- steam更新出错 应用运行中
- 2022-2028全球与中国食品级润滑油和润滑脂市场现状及未来发展趋势
- Python进制转换的完全实现——2/10/16进制原/补码互转
- 小度路由刷openwrt