Android Studio 中如何确定各适配屏幕对应的dimens配置?
Android dimens适配常见问题解答
1. 是否需要为所有屏幕尺寸、密度单独创建dimens.xml文件?
不需要全量创建,按需配置即可:
- 旧版的
small/normal/large/xlarge尺寸分组是Android 3.2之前的适配方案,现在主流开发优先使用**最小宽度(swdp)**限定符做尺寸适配,精准度更高 - 密度维度如果统一使用
dp作为间距/控件尺寸单位、sp作为字体单位,系统会自动完成密度适配,绝大多数场景不需要单独按ldpi/mdpi/hdpi等密度创建dimens文件 - 常规适配顺序:先写默认
res/values/dimens.xml作为全局基准,只有特定设备上布局出现错位、留白不合理等问题时,再针对性添加对应限定符的dimens文件即可,比如7寸平板适配加res/values-sw600dp/dimens.xml,10寸平板适配加res/values-sw720dp/dimens.xml
2. 如何确定各配置对应的维度值?
以normal尺寸、mdpi密度的设备为基准设定数值即可:
- mdpi密度下1dp=1px,是Android官方定义的基准适配标准,先在默认dimens文件中写好基准场景的所有维度值,比如页面边距16dp、正文内容字号14sp
- 更大尺寸的设备维度值按比例放大即可,比如sw600dp的平板边距可以调整为24dp,字号放大10%-20%,避免大尺寸设备上布局太空
- 仅当特定密度下有特殊适配要求时,再单独创建对应密度限定符的dimens文件重写对应值即可
注意:字体单位必须使用sp,会跟随系统字体大小设置自动调整,不要用dp定义字体尺寸
3. normal尺寸、mdpi密度对应的截图选项选择
你提供的选项中,对应的是3.2" HVGA slider (ADP1) (320x480, mdpi),该设备分辨率320x480、密度为mdpi,属于官方定义的standard normal尺寸基准设备。
内容的提问来源于stack exchange,提问作者HOWDY WORLD
相关产品推荐
相关产品推荐

