Android屏幕适配总结(一)
2016-11-09 15:24
260 查看
三个概念:
1.屏幕尺寸:英寸 对角线的长度(1英寸=2.54厘米)
2.屏幕分辨率:像素点数 px 1920*1080
3.屏幕像素密度:每英寸上的屏幕像素点数 dpi(dot per inch)
屏幕像素密度和屏幕尺寸和屏幕分辨率有关 屏幕像素越大,尺寸越小,像素密度越大
eg:4.95inch 1920*1280----dpi为445
五个符号:
1.px:构成图像的最小单位--UI设计
2.dp,dpi:都是密度无关像素,以160dpi为基准,1dip=1px 240dpi------1dip=1.5px
3.dpi: dot per inch(屏幕像素密度)
mdpi、hdpi、xhdpi、xxhdpi、xxxhdpi
mdpi 1dp=1px hdpi 1dp=1.5px xhdpi 1dp=2px
xxhdpi 1dp=3px xxxhdpi 1dp=4px
4.sp:可以根据文字大小首选项进行放缩-12、14、18、22(尽量不要使用单数和小数 以免造成精度的丢失)
屏幕适配:
1.支持各种屏幕尺寸
。dp wrap_content match_parent(填充父布局) weight
顶部栏左右两个图片设置成dp weight值都=0 中间weight值等于1 所以中间的就会优先布局
weight宽度=原有宽度+剩余空间所占宽度的百分比
LinearLayout:水平布局 button1 button2 weight值分别为1和2 宽度分别为0dp 那么出来的效果就是1:2
button1:0+(L-0)*1/3=1/3L button2:0+(L-0)*2/3=2/3L
LinearLayout水平布局 button1 button2 weight值分别为1和2 宽度分别为match_parent 那么出来的效果是2:1
button1:L+(L-2L)*1/3=2/3L button2:L+(L-2L)*2/3=1/3L
。使用相对布局,禁用绝对布局
。使用限定符 large、sw600dp都是指的双面板布局
尺寸限定符 layout-large 手机上单面板 平板上双面板 嵌套两个fragment
最小宽度限定符 layout-sw600dp (small width) 不管长度还是宽度,最小的为最小宽度 >600dp的就是平板就是双面板布局 <的就是手机
。重点:使用布局别名
res/layout/main.xml 单面板布局 res/layout-large/main.xml 多面板布局 res/layout-sw600dp/main.xml 多面板布局
res/layout/main.xml 单面板布局 res/layout/main_twopanes.xml 双面板布局
。屏幕方向限定符
res-values-sw600dp-land/layouts.xml 水平
res-values-sw600dp-port/layouts.xml 竖直
。使用自动拉伸位图 .9图
2.支持各种屏幕密度
3.实施自适应用户界面流程
官方:NewsReaderActivity
1.屏幕尺寸:英寸 对角线的长度(1英寸=2.54厘米)
2.屏幕分辨率:像素点数 px 1920*1080
3.屏幕像素密度:每英寸上的屏幕像素点数 dpi(dot per inch)
屏幕像素密度和屏幕尺寸和屏幕分辨率有关 屏幕像素越大,尺寸越小,像素密度越大
eg:4.95inch 1920*1280----dpi为445
五个符号:
1.px:构成图像的最小单位--UI设计
2.dp,dpi:都是密度无关像素,以160dpi为基准,1dip=1px 240dpi------1dip=1.5px
3.dpi: dot per inch(屏幕像素密度)
mdpi、hdpi、xhdpi、xxhdpi、xxxhdpi
mdpi 1dp=1px hdpi 1dp=1.5px xhdpi 1dp=2px
xxhdpi 1dp=3px xxxhdpi 1dp=4px
4.sp:可以根据文字大小首选项进行放缩-12、14、18、22(尽量不要使用单数和小数 以免造成精度的丢失)
屏幕适配:
1.支持各种屏幕尺寸
。dp wrap_content match_parent(填充父布局) weight
顶部栏左右两个图片设置成dp weight值都=0 中间weight值等于1 所以中间的就会优先布局
weight宽度=原有宽度+剩余空间所占宽度的百分比
LinearLayout:水平布局 button1 button2 weight值分别为1和2 宽度分别为0dp 那么出来的效果就是1:2
button1:0+(L-0)*1/3=1/3L button2:0+(L-0)*2/3=2/3L
LinearLayout水平布局 button1 button2 weight值分别为1和2 宽度分别为match_parent 那么出来的效果是2:1
button1:L+(L-2L)*1/3=2/3L button2:L+(L-2L)*2/3=1/3L
。使用相对布局,禁用绝对布局
。使用限定符 large、sw600dp都是指的双面板布局
尺寸限定符 layout-large 手机上单面板 平板上双面板 嵌套两个fragment
最小宽度限定符 layout-sw600dp (small width) 不管长度还是宽度,最小的为最小宽度 >600dp的就是平板就是双面板布局 <的就是手机
。重点:使用布局别名
res/layout/main.xml 单面板布局 res/layout-large/main.xml 多面板布局 res/layout-sw600dp/main.xml 多面板布局
res/layout/main.xml 单面板布局 res/layout/main_twopanes.xml 双面板布局
。屏幕方向限定符
res-values-sw600dp-land/layouts.xml 水平
res-values-sw600dp-port/layouts.xml 竖直
。使用自动拉伸位图 .9图
2.支持各种屏幕密度
3.实施自适应用户界面流程
官方:NewsReaderActivity
相关文章推荐
- Android-屏幕适配需要注意的地方总结
- Android屏幕适配总结
- Android屏幕适配总结
- Android开发——Android手机屏幕适配方案总结
- android屏幕适配全面总结
- Android屏幕适配总结
- Android屏幕适配总结
- android屏幕适配总结
- Android 屏幕适配相关的学习总结
- Android开发——Android手机屏幕适配方案总结
- android屏幕适配全面总结
- Android 屏幕适配原则总结
- android下在屏幕适配小总结
- Android_关于屏幕适配经验总结
- Android屏幕适配总结
- android屏幕适配全面总结
- android 培训文档 总结的 屏幕适配
- Android屏幕适配指南(根据官方翻译总结)
- android 屏幕适配总结
- Android屏幕适配总结