借鉴drawable文件夹,使用dimens控制字体大小、边距大小。适配Android不同机型,不同屏幕

本文详细介绍了如何通过创建不同比例的位图和使用value不同的dimens文件来实现Android应用的机型适配。通过在drawable文件夹下创建不同目录并设置相应图片尺寸,以及在values文件夹内创建不同目录来调整字体大小和距离单位,实现了跨设备的一致性用户体验。以mdpi作为基准,不同DPI设备下的输出效果得到显著优化。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

以前一直是个Get用户,一直都是伸手党,最近刚好项目中要用到机型适配,试了很多方法(配置不同layout文件夹,不同的layout文件等)。但都感觉后期维护工作量巨大,后来从图片资源适配获得灵感,使用value不同的dimens文件,达到适配的效果:
1、创建不同的位图(Android官方介绍)
  • xxxhdpi: 5.0                    500*500 
  • xxhdpi: 3.0                      300*300
  • xhdpi:2.0                      200*200
  • hdpi:1.5                        150*150
  • mdpi:1.0(baseline)    100*100
  • ldpi:0.75                       75*75 
文件夹名称比例图片大小(示例)屏幕宽度DPI值分辨率举例
drawable-xxxhdpi5.0500*5001440左右640dpi2560*1440(Nexus6)
drawable-xxhdpi3.0300*3001080左右480dpi1080*1920
drawable-xhdpi2.0200*200720左右320dpi720*1280
drawable-hdpi1.5150*150480左右240dpi480*800,480*854,540*960
drawable-mdpi1.0(BaseLine)100*100360左右160dpi320*480
drawable-ldpi0.7575*75240左右  


2、借鉴drawable文件夹,依次创建values,values-mdpi, values-hdpi,values-xhdpi, values-xxhdpi, values-xxxhdpi。 (鉴于现在ldpi的机型很少,就直接使用默认的values来做适配)。

测试的过程中,使用mdpi做为基线 ,我针对像素单位dp使用10dp, 字体大小单位sp使用10sp。其它文件的单位,分别使用上面的比例关系,设置字体,边距大小。

文件夹名称字体大小sp距离大小dp手机输出值(字体大小)手机显示值(距离大小)
values-xxxhdpi5050175.0175.0
values-xxhdpi303090.090.0
values-xhdpi202040.040.0
values-hdpi151522.522.5
values-hdpi(854*480)

25.8722.5
values-mdpi101010.010.0
values-ldpi7.57.55.6255.625



评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值