借鉴drawable文件夹,使用dimens控制字体大小、边距大小。适配Android不同机型,不同屏幕
来源:互联网 发布:淘宝店铺刷销量平台 编辑:程序博客网 时间:2024/05/16 15:38
以前一直是个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*1920drawable-xhdpi2.0200*200720左右320dpi720*1280drawable-hdpi1.5150*150480左右240dpi480*800,480*854,540*960drawable-mdpi1.0(BaseLine)100*100360左右160dpi320*480drawable-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.0values-xxhdpi303090.090.0values-xhdpi202040.040.0values-hdpi151522.522.5values-hdpi(854*480)
25.8722.5values-mdpi101010.010.0values-ldpi7.57.55.6255.625
25.8722.5values-mdpi101010.010.0values-ldpi7.57.55.6255.625
2 0
- 借鉴drawable文件夹,使用dimens控制字体大小、边距大小。适配Android不同机型,不同屏幕
- 借鉴drawable文件夹,values使用dimens控制字体大小、边距大小。适配Android不同机型,不同屏幕
- Android:自适应不同分辨率的屏幕大小、方向和不同分辨率的字体大小
- android不同屏幕大小支持
- Android:不同drawable文件夹的区别
- Android drawable不同文件夹的区别
- Android利用dimens.xml进行适配,使用代码生成不同的dimens.xml文件
- Android利用dimens.xml进行适配,使用代码生成不同的dimens.xml文件
- Android利用dimens.xml进行适配,使用代码生成不同的dimens.xml文件
- 自适应不同分辨率的屏幕大小、方向和不同分辨率的字体大小
- Android应用程序支持大小不同的屏幕
- Android Developers:支持不同的屏幕大小
- Android开发兼容不同的屏幕大小
- Android自适应不同分辨率或不同屏幕大小
- Android自适应不同分辨率或不同屏幕大小
- Android自适应不同分辨率或不同屏幕大小
- Android自适应不同分辨率或不同屏幕大小
- Android自适应不同分辨率或不同屏幕大小
- 14
- hdu 1166敌兵布阵
- android apk 防止反编译技术第四篇-对抗JD-GUI
- 【2015/4/22】jsp学习笔记2--jsp基本语法+入门
- OpenWrt-路由器上的linux
- 借鉴drawable文件夹,使用dimens控制字体大小、边距大小。适配Android不同机型,不同屏幕
- 第3章 第5题
- [LeetCode] Happy Number
- 从零开始学习OpenWrt
- C和指针读书笔记-第4章(语句)
- sklearn源码学习笔记一:估计子基类base.py
- ray ban sunglasses outlet-349214
- 学习笔记-JAVA-考点10-什么情况下需要重写equals和hashcode()两个方法?
- MyEclipse10插件安装(二)