Android梳理 屏幕适配
来源:互联网 发布:网络拓扑发现算法 编辑:程序博客网 时间:2024/04/28 00:06
Android的机型太多了,这也是比较麻烦的事情,一般要处理3个方面的:
1.适配不同的语言
2.适配不同屏幕
3.适配不同的版本
1.适配不同的语言
在res下有个value是,默认的是英语,当资源文件没有其他资源,那就都用这个了。要适配其他语言需要创建额外的values,列如 values-zh(中国), values-fr(法语)等,Android系统会根据当前手机设置的区域适配相应的语言。
2、适配屏幕
一个是layout,一个是drawable
现在Androidstudio基本都帮我们建好了,我们之间在里面写不同屏幕的布局文件就行。这里要说一下,屏幕是分竖屏,横屏的,默认加载的是竖屏,所以要想适配横屏的话还需要自己建。如:layout-land,layout-large-land.竖屏的,layout-large
不同的drawable文件夹是以密度来分的,以前自己整理了一下一个大神的,我直接贴到下面了,包括dp,px,sp的一些说明
PPI = √(长度像素数² + 宽度像素数²) / 屏幕对角线英寸数 (密度)
dp:Density-independent pixels,以160PPI屏幕为标准,则1dp=1px,
dp和px的换算公式 :
dp*ppi/160 = px。比如1dp x 320ppi/160 = 2px。
sp:Scale-independent pixels,它是安卓的字体单位,以160PPI屏幕为标准,当字体大小为 100%时, 1sp=1px。
sp 与 px 的换算公式:sp*ppi/160 = px
px = dp*ppi/160
dp = px / (ppi / 160)
px = sp*ppi/160
sp = px / (ppi / 160)
有了这张图就方便查看了,一般项目如果只采用一套图的话(高密度自动缩小适配低密度),就可以根据上面的规则划算相应的dp.例如UI给你一张图大小48*48,这张图她(一般都是女MM)是按720*1280做的,你放在drawable-hpi里面,那你用xml中写的时候用dp来固定大小,就要除以1.5,设置32dp*32dp,wrap也可。
3、不同系统版本
用Build来判断版本
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { <span style="white-space:pre"></span>//TODO 大于当前版本 } else { <span style="white-space:pre"></span>//TODO 小于当前版本<span style="white-space:pre"></span>}
- Android梳理 屏幕适配
- 多屏幕适配梳理
- Android中dp,px,sp概念梳理以及如何做到屏幕适配
- Android中dp,px,sp概念梳理以及如何做到屏幕适配
- Android中dp,px,sp概念梳理以及如何做到屏幕适配
- Android中dp,px,sp概念梳理以及如何做到屏幕适配
- Android中dp,px,sp概念梳理以及如何做到屏幕适配
- Android中dp,px,sp概念梳理以及如何做到屏幕适配
- Android中dp,px,sp概念梳理以及如何做到屏幕适配
- Android中dp,px,sp概念梳理以及如何做到屏幕适配
- Android中dp,px,sp概念梳理以及如何做到屏幕适配
- Android中dp,px,sp概念梳理以及如何做到屏幕适配
- Android中dp,px,sp概念梳理以及如何做到屏幕适配
- Android中dp,px,sp概念梳理以及如何做到屏幕适配
- Android知识梳理之屏幕适配全攻略
- Android知识梳理之屏幕适配全攻略
- Android知识梳理之屏幕适配全攻略
- 【Android】屏幕适配
- js中数组,其他都是对象
- 判别对象类型
- JVM的内存区域划分
- Request获取url各种信息的方法
- mysql乐观锁总结和实践
- Android梳理 屏幕适配
- Tomcat显示文件目录&文件列表
- 使用Netty代理,提高工作效率
- oracle 导出数据 dmp
- UIAlertView
- MFC 创建带窗口的dll链接库.窗口为非模态窗口
- .NET生成静态页面的方案总结
- 谁的青春不迷茫
- 图片上传时,同时显示出图片