`
qq986945193
  • 浏览: 82927 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

屏幕适配 部分知识点总结,CSDN小冰原创

 
阅读更多
/** * 作者:David Zheng on 2015/11/7 15:38 * *

网站:http://www.93sec.cc * *

微博:http://weibo.com/mcxiaobing * *

微博:http://weibo.com/93sec.cc */ 个人交流QQ986945193
屏幕适配简介(了解)
  • Android的屏幕有大有小,为了对不同大小屏幕的设备提供最好的体验,需要对不同大小的设备进行不同的设计,让他们产生的效果一样的。
  • 进入友盟:http://www.umeng.com/ ,专门提供移动端数据统计的网站。查看Android屏幕设备,以及分辨率指数,发现android中的屏幕碎片化太严重。
  • 所以我们只要尽量适配这几种分辨率,就可以在大部分的手机上正常运行了。

屏幕适配中几个重要的概念 ( 记忆 )
  • 什么是屏幕尺寸、屏幕分辨率、屏幕像素密度?
    • 屏幕尺寸:屏幕的对角线的长度,单位是英寸,1英寸=2.54厘米
    • 屏幕分辨率:横纵向上的像素点数,单位是px,1px=1个像素点 (屏幕适配和它没有关系)
    • 屏幕像素密度:每英寸上的像素点数,单位是dpi,即“dot per inch”的缩写。 (屏幕适配和dpi有关系)
  • 什么是dp、dip、dpi、px?他们之间的关系是什么?
    • px:其实就是像素UI设计、Android原生API都会以px作为统一的计量单位,像是获取屏幕宽高等。
    • dp,dip和dpi:Density Independent Pixels ,也就是密度无关像素。每个英寸上的像素点

  • 什么是mdpi、hdpi、xdpi?如何计算和区分?
    • mdpi (medium-density) : 每个英寸约占160dpi。这个是基准线dpi
    • hdpi (high-density):每个英寸约占240dpi。
    • xhdpi(extra high-density):每个英寸约占320dpi。
    • xxhdpi(extra-extra-high-density) :每个英寸约占480dpi
  • 缩放因子:(原理性东西,理解)
    • ldpi : mdpi : hdpi : xhdpi : xxhdpi=3:4:6:8 : 12
    • icon图标的计算:
      • 基准线是 mdpi,图标为:48*48
      • ldpi : 0.75*48=36 所以 为 36*36
      • hdpi: 72*72
      • xhdpi: 96*96


屏幕适配的几种方式(理解记忆)
  • 图片适配(不是很常用)在res目录下,分别有这些mdpi、hdpi、xdpi、xxdpi 对应的文件夹。
    通过在这些不同的文件夹下,放入不同的图片,不同的手机会自动加载相应的图片,以达到屏幕适配。但是这种不太常用,因为图片比较暂用存储空间,打出来的apk包也会相应的变大。所以一般只用一套主流的图片,或者对各别有问题的图标进行适配。

  • 布局适配(不常用)
    • 比如有一个主流分辨率的手机加载布局后,UI效果很差,我们就可以使用布局适配
    • 语法:大的数字写到前面,小的数字写到后面,中间是x连接
    • 举个栗子:layout-1280x720
    • 没图说个**:
  • dimens适配(尺寸适配)(常用)
    • 不同values下写dimens,以便达到尺寸适配
    • 举个例子:values-1280x720
    • 图片说明:

  • 权重适配(常用)

  • 代码适配(常用)
    • 获得屏幕的宽高
    • 计算出控件所占屏幕的比例
    • 根据比例动态设置控件的宽高
    • 举个例子:
//获得屏幕的宽高
DisplayMetrics displayMetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
int heightPixels = displayMetrics.heightPixels;
int widthPixels = displayMetrics.widthPixels;
分享到:
评论

相关推荐

    模拟电子技术基础知识点总结

    模拟电子技术基础知识点总结

    数据结构知识点总结全面版

    数据结构知识点全面版总结 便于大家深入理解和运用数据结构

    通信原理知识点(详细版)

    通信原理知识点综合版本,分为二十几个考点,带专业课上课时候用的资料!

    深度探索C++对象模型·重要知识点总结

    深度探索C++对象模型·重要知识点总结 http://blog.csdn.net/wuliming_sc

    软件设计师知识点总结

    软件设计师,所有从09年到16年的选择题,大题知识点分类总结,自己总结的

    数据库系统工程师知识点总结

    2020数据库系统工程师学习资料章节资料总结

    android 屏幕适配工具

    提供了android 屏幕适配方案,使用教程 https://blog.csdn.net/qq_17827919/article/details/81027491。

    Android屏幕适配工具

    android屏幕适配代码工具类,最新更新,提供px dp两套适配方案,提供源码和可执行jar包,简单易用。csdn博客地址,http://blog.csdn.net/fesdgasdgasdg/article/details/52325590

    Android多屏幕适配

    研究了以前同事留下的适配方案和网神hongyang大牛提供的方案,特整理了两套完美的android屏幕适配工具类,和详细的使用demo,可以根据px适配,也可以根据dp适配。适配原理可参考hongyang的博客,若还不会或者不会用...

    CSDN技术库的知识图谱高清合集(50张)

    资源来自CSDN:http://geek.csdn.net/news/detail/110921 50份高清知识图谱,只为分享传播,不需资源分

    ipad pro 11寸四周黑边,屏幕适配解决

    ipad pro 11寸四周黑边,屏幕适配解决 https://blog.csdn.net/slionls/article/details/90441413

    CSDN Share:大会PPT合集下载,纯干货!

    CSDN Share 是一款出色的Android阅读工具,阅读由 CSDN社区用户分享的技术文档。 通过CSDN Share可以在线阅读或离线下载CSDN 举办的各类技术活动的精彩讲义,以及来自CSDN下载社区由用户分享的技术文档。 马上下载...

    Android 手机屏幕适配解决办法

    Android的屏幕适配,即使得某一元素在Android不同尺寸、不同分辨率的手机上具备相同的显示效果,这个问题一直以来都是我们Android开发者不得不面对的问题。本文参考了很多前人的博客,并对这一问题做一个总结,力求...

    Android屏幕适配相关工具

    详情:http://blog.csdn.net/qq_19547851/article/details/76080279

    CSDN博客提取器修正版

    程序通过分析CSDN博客源码来生成一些必要的数据,可能在以后使用当中出现爬取不了的情况,可能是CSDN的源码结构修改了。程序只是用于学习之用,严禁用于非法目的而照成CSDN服务器过载。 由于生成PDF的时候需要依赖...

    android 屏幕适配方案工具 第二版 (可执行jar包)

    文章地址:http://blog.csdn.net/i7788/article/details/44937277

    Android屏幕分辨率适配

    配合http://blog.csdn.net/yan_startwith2015/article/details/52710176做屏幕分辨率适配使用,这个是1分,另一个是免费的(文章中找),任君选择

    CSDN app(完)

    代码为博客的实例代码,详细请参考:http://blog.csdn.net/lmj623565791/article/details/24022165 有问题请留言

    CSDN博客下载器v2.2

    好消息:CSDN博客下载器v2.0版本增加导出PDF文件功能,方便查看图片与文章。 在无网络环境,也可以看自己的一些文章。当然如果您发现CSDN博客的一些文章值得收藏,你也可以使用本软件轻松的下载到您的电脑。 该版本...

    CSDN阅读器 android版

    CSDN阅读器是有个人开发的基于CSDN网站RSS功能,能够为您提供CSDN网站,高质量的资讯阅读、博文阅读。 主要功能 1、资讯阅读 2、推荐博文及分类博文阅读 3、刷新后可以离线阅读 4、达到一定积分后,可以关闭广告 ...

Global site tag (gtag.js) - Google Analytics