打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
dp.px区别
dp.px区别--android单位【转】
2011-10-28 16:11

同LCD Density Change软件一样,修改的是Density。
原本是240,降低到200是降低了UI的大小,不是改分辨率。

像我另外一个帖子里说的:

这个修改的不是分辨率,LCD的物理分辨率是不可能修改的。
简单的证明就是桌面截图到电脑里看,还是800*480的分辨率。

这个修改的其实是Density,可以理解成像素密度。
Android里为了适应不同屏幕大小的机器能保证相对相同的UI界面,使用了Density的概念。
标准Density分三种,120,160,240,低中高三层。

density表示每英寸有多少个显示点(逻辑值),它的单位是dpi:dot per inch,通常屏幕大时,density就大,屏幕小时,density就小,通常
屏幕实际分辨率为240px*400px时,density=120
屏幕实际分辨率为320px*533px,density=160
屏幕实际分辨率为480px*800px,density=240

分辨率是整个屏是多少点,比如800x480,它是软件的显示单位

dp=dip=dx (Density independent pixel)
基于屏幕密度的抽象单位,设备无关的点,用于说明与密度无关的尺寸和位置。这些单位是相对于一个160dpi的屏幕,所有一个dp是160dpi屏幕上的一个点
px指软件的单位点,设备相关的点

若使用px,如果设某控件大小400x400px,在800x480上显示正常,而在533x320的屏上就超出屏幕了
若使用dp,如果设某控件大小为160x160dp,就可以通过从系统中取density来算出真正的大小,比如在800x480屏的density设为240,而533x320屏的density设为160,借以下公式计算
pixels = dips * (density / 160)
在800x480在屏中显示240象素,而在533x320的屏中显示为160象素,控件在屏中显示的比例是一样的。


因此,手动降低了Density后,会使用更少的点来表示UI,因此导致UI变小,这并不是分辨率提升的效果。

简单说,减低Density是减小屏幕上东西的大小,不减小屏幕容量,理论上这会降低一定的显示质量的。
提升分辨率是提升屏幕容量的大小,但不减小屏幕上东西的大小。

而且,很多软件在使用UI布局的时候没有使用sp而直接使用了px,从而导致了降低Density后无法全屏显示甚至系统错误。
大家谨慎使用。


本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
android ui的几个概念:px,dip(dp),sp,dpi,分辨率等
手机屏幕适配原理及实现
关于dip、dpi和分辨率的一些事
怎样获取Android手机屏幕的大小(分辨率、密度)
UI设计中px、pt、ppi、dpi、dp、sp之间的关系
2016最新安卓版UI设计规范篇
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服