当前位置: 首页 > news >正文

像素密度和分辨率

为什么80%的码农都做不了架构师?>>>   hot3.png

像素密度和分辨率是两个不同的概念,分辨率是总的像素点,像素密度是单位长度的像素点

HVGA屏density=160;QVGA屏density=120;WVGA屏density=240;WQVGA屏density=120

VGA:Video Graphics Array,即:显示绘图矩阵,相当于640×480

HVGA:Half-size VGA;即:VGA的一半,分辨率为480×320;

QVGA:Quarter VGA;即:VGA的四分之一,分辨率为320×240;

WVGA:Wide Video Graphics Array;即:扩大的VGA,分辨率为800×480像素;

WQVGA:Wide Quarter VGA;即:扩大的QVGA,分辨率比QVGA高,比VGA低,一般是:400×240,480×272

density值表示每英寸有多少个显示点,与分辨率是两个不同的概念

Android主要有以下几种屏:

QVGA和WQVGA屏density=120;

HVGA屏density=160;

WVGA屏density=240;

下面以480dip*800dip的WVGA(density=240)为例,详细列出不同density下屏幕分辨率信息:

当density=120时 屏幕实际分辨率为240px*400px (两个点对应一个分辨率)
状态栏和标题栏高各19px或者25dip
横屏是屏幕宽度400px 或者800dip,工作区域高度211px或者480dip
竖屏时屏幕宽度240px或者480dip,工作区域高度381px或者775dip

density=160时 屏幕实际分辨率为320px*533px (3个点对应两个分辨率)
状态栏和标题栏高个25px或者25dip
横屏是屏幕宽度533px 或者800dip,工作区域高度295px或者480dip
竖屏时屏幕宽度320px或者480dip,工作区域高度508px或者775dip

density=240时 屏幕实际分辨率为480px*800px (一个点对于一个分辨率)
状态栏和标题栏高个38px或者25dip
横屏是屏幕宽度800px 或者800dip,工作区域高度442px或者480dip
竖屏时屏幕宽度480px或者480dip,工作区域高度762px或者775dip

apk的资源包中,当屏幕density=240时使用hdpi标签的资源
当屏幕density=160时,使用mdpi标签的资源
当屏幕density=120时,使用ldpi标签的资源。
不加任何标签的资源是各种分辨率情况下共用的。
建议:布局时尽量使用单位dip,少使用px。

device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA、HVGA和QVGA 推荐使用这个,不依赖像素。

转载于:https://my.oschina.net/reone/blog/532194

相关文章:

  • 链表的销毁与清空(转)
  • NChome如何创建单据跟主子表还有扩展开发要怎么弄?
  • 数据库 外存储器读写数据物理过程
  • android四大组件之Service 简单音乐播放器
  • 已安装pymysql 但Pycharm 中import pymysql出错的解决方案
  • 关于字符串的倒置
  • 实时计算Flink——独享模式——Batch功能介绍
  • jQuery页面加载初始化的3种方法
  • MetaMask/provider-engine-1
  • canvas-star7.html
  • 微信小程序上拉加载:onReachBottom详解+设置触发距离
  • ubuntu 安装配置ssh
  • niucms就是以城市为分割单位,在上面 小区/乡村/同城论坛+58+团购
  • idea tomcat启动时候中文乱码、问号
  • 如何从CRM中获益?看专家怎么说!
  • JS 中的深拷贝与浅拷贝
  • .pyc 想到的一些问题
  • Angular4 模板式表单用法以及验证
  • - C#编程大幅提高OUTLOOK的邮件搜索能力!
  • CSS 提示工具(Tooltip)
  • docker容器内的网络抓包
  • HTML中设置input等文本框为不可操作
  • idea + plantuml 画流程图
  • Javascript基础之Array数组API
  • LeetCode算法系列_0891_子序列宽度之和
  • Linux CTF 逆向入门
  • python 装饰器(一)
  • vue中实现单选
  • Yeoman_Bower_Grunt
  • 包装类对象
  • 初识MongoDB分片
  • 番外篇1:在Windows环境下安装JDK
  • 使用 Xcode 的 Target 区分开发和生产环境
  • 吴恩达Deep Learning课程练习题参考答案——R语言版
  • kubernetes资源对象--ingress
  • 扩展资源服务器解决oauth2 性能瓶颈
  • #include到底该写在哪
  • #微信小程序:微信小程序常见的配置传值
  • (4)事件处理——(2)在页面加载的时候执行任务(Performing tasks on page load)...
  • (更新)A股上市公司华证ESG评级得分稳健性校验ESG得分年均值中位数(2009-2023年.12)
  • (企业 / 公司项目)前端使用pingyin-pro将汉字转成拼音
  • (算法二)滑动窗口
  • (五)大数据实战——使用模板虚拟机实现hadoop集群虚拟机克隆及网络相关配置
  • (转)清华学霸演讲稿:永远不要说你已经尽力了
  • (转载)Linux 多线程条件变量同步
  • .bat批处理(十一):替换字符串中包含百分号%的子串
  • .bat批处理(四):路径相关%cd%和%~dp0的区别
  • .net 设置默认首页
  • .NET开源快速、强大、免费的电子表格组件
  • .net连接oracle数据库
  • .NET平台开源项目速览(15)文档数据库RavenDB-介绍与初体验
  • .Net通用分页类(存储过程分页版,可以选择页码的显示样式,且有中英选择)
  • .Net中wcf服务生成及调用
  • @Autowired多个相同类型bean装配问题
  • [ 渗透测试面试篇 ] 渗透测试面试题大集合(详解)(十)RCE (远程代码/命令执行漏洞)相关面试题