Android屏幕适配总结(一)

来源:互联网 发布:怎样将软件汉化 编辑:程序博客网 时间:2024/04/28 20:08

三个概念:

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




0 0
原创粉丝点击