android鼠标dpi,对Android 中 px、DPI、dp(dip)、density的理解
1:px
像素。一般说一个手机的分辨率为1280*720,意思就是宽度为720像素,高度为1280像素。
但是,安卓的适配不能用这种方式。
比如一个840*360的屏幕和一个1280*720的屏幕,我做了一个180px宽的布局,那么在第一个屏幕上就占据一半的宽度,在第二个屏幕上会只占据1/4的宽度。这样无法达到适配要求。
2:DPI
既然px不能作为适配的单位,所以引入了DPI的概念。(Dots Per Inch)每英寸的点数。
举例:现在规定有两个手机,尺寸一样。都是宽度为2英寸,高度为3.5英寸(瞎举的,高度咋滴都行)
第一个手机的分辨率为:840*360。也就是在2英寸的屏幕上,有360个像素点,那么每英寸的像素点就是180个。
第二个手机的分辨率为:1280*720.也就是在2英寸的屏幕上,有720个像素点,那么每英寸的像素点就是360个。
个数就是DPI
3:dp
然后引入了dp的概念,这个dp和屏幕分辨率就木有关系了,只和DPI有关系
规定是:当dpi为160时,1dp = 1px;
以此类推:当dpi为320时,1dp = 2px;
1dp = dpi/160 px;
那么,用dp来适配,
还是那两个屏幕,840*360的DPI为180,1280*720的DPI为360.现在来做一个宽为80dp的div吧
第一个屏幕:1dp = (180/160)px = 1.125px; 80dp = 90px
第二个屏幕:1dp = (360/160)px = 2.25px; ?80dp = 180px;
都是对应屏幕的1/4宽。这样也就达到了适配的目的。
4:density
这个密度的值,其实就是dpi/160的值。
诶?上面说1dp = dpi/160 px.那么,1dp = density px?
在安卓中,提供了获取density的方法
getResources().getDisplayMetrics().density
这样,也就实现了dp和px的换算
话说为啥要换算dp和px呢?
因为,xml中既可以用px,也可以用dp
但是java代码中,很多布局相关的单位都是px,比如:
LinearLayout.LayoutParams layoutParams =new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
layoutParams.setMargins(10,20,30,40);
这里的margins的四个参数left,top,right,bottom的单位都是px,得换成dp
android鼠标dpi,对Android 中 px、DPI、dp(dip)、density的理解相关推荐
- Android开发之显示篇(弄懂ppi、dpi、pt、px、dp、dip、sp之间的关系看这一篇就够了)
版权申明]非商业目的注明出处可自由转载 博文地址:https://blog.csdn.net/ShuSheng0007/article/details/85165773 出自:shusheng007 ...
- Android中px、dp、dip、sp详解
众所周知,Android厂商非常多,各种尺寸的Android手机.平板层出不穷.导致了Android生态环境的碎片化现象越来越严重.Google公司为了解决分辨率过多的问题,在Android 的开发文 ...
- 1ppi等于多少dpi_Android开发之显示篇(弄懂ppi、dpi、pt、px、dp、dip、sp之间的关系只需这一篇)...
概述 前段时间看了小米8的发布会,其中屏幕参数是如下介绍的: 小米8采用6.21英寸的三星AMOLED屏幕,分辨率为2248x1080,402 PPI ,纵横比是18.7:9,屏占比为86.68%,最 ...
- Android:长度单位详解(px、dp、sp)
长度单位 1.重要概念 1.1 屏幕尺寸 1.2 屏幕分辨率 1.3 屏幕像素密度 1.4 屏幕尺寸.分辨率.像素密度三者关系 2.六种单位介绍 2.1.dp和px的换算 2.2.在代码中转换单位 2 ...
- 弄懂ppi、dpi、pt、px、dp、dip、sp之间的关系
基本概念: 屏幕的像素与图片的像素是一回事吗? 屏幕的分辨率和图片的分辨率是同一回事吗,分别代表什么,二者什么关系? PPI 和DPI 是一回事吗,什么关系? pt与px什么关系? Android中的 ...
- android this context,Android應用開發中關於this.context=context的理解
在Android應用開發中,有的類里面需要聲明一個Context的成員變量,然后還需要在該類的構造函數中加上this.context=context;這行代碼.為什么要這么寫呢?不寫不行么? 先看下面 ...
- 2021年最全Android屏幕适配的度量单位px dp(dip) ppi dpi sp pt的区别(最详细,屏幕尺寸,屏幕分辨率,屏幕兼容,屏幕适配)
0 前言 快乐李同学最新在学习Android屏幕适配相关的知识点,其中涉及到了很多Android屏幕适配相关概念和度量单位,但是快乐李同学掌握的相关知识不牢固,于是决定写出这两篇文章对这方面的知识点做 ...
- Android的单位px,pt,dp,sp总结和获取屏幕分辨率
px: pixels(像素). 是屏幕中可以显示的最小单位元素,px是设备密度有关的,不同设备显示效果不同.因为由于不同的设备密度不同,密度就是单位英寸的像素不同,在不同的手机上显示的大小就不同 pt ...
- Android 鼠标样式修改
Android 鼠标样式修改 Android 系统鼠标资源文件的位置: /frameworks/base/core/res/res/drawable-mdpi/drawable/pointer_arr ...
- android wm 改变大小,Android 屏幕适配经验总结
本文记录一些适配问题的研究,基础概念不做过多介绍. Android在做屏幕适配的时候一般考虑两个因素:分辨率和dpi.分辨率是屏幕在横向.纵向上的像素点数总和,一般用"宽x高"的形 ...
最新文章
- 为什么LINKBUTTON不能插在LTEMTEMPLATE里???
- jboss7 Java API for RESTful Web Services (JAX-RS) 官方文档
- Python Django列表渲染for的使用
- 使用Docker虚拟化出一个Centos7操作系统(140、141机器上执行)
- 计算机专业比重点线高40多分,这3所211大学,超过一本线40分就可报考,性价比高,值得报考...
- c语言鼠标环绕特效,C语言写的鼠标有残影,急需解决方案,在线等待!
- 比 Windows DNS 蠕虫漏洞更严重!SharePoint 反序列化RCE漏洞详情已发布,速修复
- HP的.NET职位面试题
- 从最理想的情况论证自己的观点,必然错误,为什么明知故犯?
- Origin峰值拟合、重叠峰拟合
- 从零实现加密隧道(二):socks5 协议详解
- python:实现base64加密和base64解密算法(附完整源码)
- 三星手机和计算机如何连接打印机,三星打印机连接到电脑没反应怎么办
- OFDM学习笔记(六)(峰均值问题)
- ansible使用之——网络设备自动巡检
- 【转】光荣的传统,荣耀的历史,勇敢的心!
- PHP empty() 的判断
- C语言函数大全--c开头的函数
- 计算机软件安装注意事项
- 大数据技术与应用实验报告1