zoukankan      html  css  js  c++  java
  • 屏幕适配备忘录

    屏幕尺寸

    • Android实际屏幕的尺寸广义分为四个:小,正常,大,超大(small,normal,large,extra-large)
    • 屏幕密度:屏幕的物理区域内的像素的数量:通常被称为dpi(每英寸点数)
    • Android中的所有实际的屏幕密度分为六个广义的密度,low,medium,high,extra-high,extra-extra-high,and extra-extra-extra-high
    • 方向:从用户的角度来说,分为横向与纵向,即屏幕的宽高比
    • 分辨率:在屏幕上的物理的像素的总数
    • 密度无关像素(即DP):虚拟像素单元,在定义UI布局的时候,此时应当使用密度无关的方式来表示布局尺寸或者位置

    [学习网址]http://edu.csdn.net/course/detail/1744/26852?auto_start=1
    account:zhaojt_exam

    Android屏幕的支持范围:

    • 一组(四种)广义的大小:小,正常,大和超大

    • 一组(六种)广义密度:

      1. ldpi -- 120dpi (AndroidStudio已经取消了)
      2. mdpi -- 160dpi (标准尺度即为1)
      3. hdpi -- 240dpi
      4. xhdpi -- 320dpi
      5. xxhdpi -- 480dpi
      6. xxxhdpi -- 640dpi

      需要注意的是,查找出当前手机的屏幕密度后,Android App会自动的进行靠边(那边比较靠近,就获取那边哪边文件夹的数据,若当前手机的屏幕密度是180,那个他会去获取hdpi即160dpi的文件夹的内容),然后进行处理。

    解决图片适配的问题

    • 一张同样大小的图片在不同的屏幕上显示的大小是不一样的
    • ppi(pixel per inch),每英寸的距离像素点的个数,在这里跟dpi的定义是相同的
    • ppi越低,同一张图片显示会越大,相反,ppi越高图片显示的越小
    • 举例,HVGA屏幕320*480,一般为3.5寸,计算点密度(即勾股定理除以对角线即可),(3202+4802)开方/2 = 164,此时Android系统就会找到160的文件夹

    解释图片适配的问题(详细可以查看api文档的最佳实践)

    • 创建用于不同密度的可替代的位图,应遵循3:4:6:8:12:16 (即密度配比120:160:240:320:480:640)缩放比例六个广义密度。

    • 官方例子,如果存在一个位图在中等密度文件夹(160dpi)屏幕存在48x48像素的图片,那么在不同的密度的手机下,就会出现

    • 120dpi -- ldpi -- 32x32像素

    • 160dpi -- mdpi -- 48x48像素

    • 240dpi -- hdpi -- 64x64像素

    • 320dpi -- xhdpi -- 96x96像素

    • 480dpi -- xxhdpi -- 144x144像素

    • 640dpi -- xxxhdpi -- 192x192像素

      注意若图片只是存在一幅图,那么如果当前手机密度的文件夹不存在文件,那么就会在其他密度文件中找,若在mdpi文件夹中找到那么若当前手机为xhdpi,此时,该图片就会按照比例来进行放大,此时图片就会失真,反过来,文件存放在高密度的文件夹中,但是手机的密度小,此时,图片就会按照上面的比例缩小到相应的图片。
      那么如果我们将所有的图片文件都放置到高密度的文件夹,即都做高密度的图片,这样就能只做一份图,其他就不用管理,直接让系统缩小就可以了,这种想法可以,但是不符合实际,原因是我们的高清图都是很大的,若使用率很小就会产生安装包过大浪费容量的问题,所以需要分情况来进行存放图片,不能一味就做高分别率的图

    屏幕的官方分类

    • 超大屏幕是至少960dp x 720dp
    • 大屏幕是至少640dp x 480dp
    • 正常屏幕是至少470dp x 320dp
    • 小屏幕是至少426dp x 320dp

    屏幕适配的测试可以使用百度的MTC来进行测试,减少公司采购真机的成本

  • 相关阅读:
    解读dbcp自动重连那些事
    dbcp重连问题排查
    Redis 历史版本下载URL
    jackson 完整Jar包
    Linux缺少动态连接库.so--cannot open shared object file: No such file or directory
    多模匹配--历程
    利用poi操作word文档
    Java word 内容读取
    光纤存储和服务器架构总结
    FastDFS和集中存储方式对比
  • 原文地址:https://www.cnblogs.com/canceler/p/5191281.html
Copyright © 2011-2022 走看看