android px转换为dip/dp

 1 /**
 2      * 根据手机的分辨率从 dp 的单位 转成为 px(像素)
 3      */
 4     public  int dipTopx(Context context, float dpValue) {
 5         final float scale = context.getResources().getDisplayMetrics().density;
 6         return (int) (dpValue * scale + 0.5f);
 7     }
 8
 9     /**
10      * 根据手机的分辨率从 px(像素) 的单位 转成为 dp
11      */
12     public int pxTodip(Context context, float pxValue) {
13         final float scale = context.getResources().getDisplayMetrics().density;
14         return (int) (pxValue / scale + 0.5f);
15     }
时间: 2024-08-29 22:47:11

android px转换为dip/dp的相关文章

android布局单位dip dp sp px

android布局常用单位有dip.dp.sp.px. dip/dp 表示密度无关像素(density-independent pixel),是基于屏幕物理密度的抽象单元.dp是相对一个160dpi密度的屏幕来讲的,所以在160dpi密度的屏幕里1个dp表示一个像素.屏幕密度高单位dp对应像素值高,屏幕密度低单位dp对应像素值低.也就是说不同密度的屏幕,单位dp对应的像素值也不一样.但记住一点就行,无论哪种密度,1个dp在屏幕上总是表示1/160英寸,从而保证不同屏幕上dp总能表示相同的尺寸.

Android度量单位说明(DIP,DP,PX,SP)

(一)概念 dip: device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA.HVGA和QVGA 推荐使用这个,不依赖像素.px: pixels(像素). 不同设备显示效果相同,一般我们HVGA代表320x480像素,这个用的比较多.pt: point,是一个标准的长度单位,1pt=1/72英寸,用于印刷业,非常简单易用:sp: scaled pixels(放大像素). 主要用于字体显示best for tex

Android开发之dip, dp, px, sp区别

显示单位px和dip以及sp的区别 dip: device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA.HVGA和QVGA 推荐使用这个,不依赖像素. px: pixels(像素). 不同设备显示效果相同,一般我们HVGA代表320x480像素,这个用的比较多. pt: point,是一个标准的长度单位,1pt=1/72英寸,用于印刷业,非常简单易用: sp: scaled pixels(放大像素). 主要用于字

C++实现android中px转换为dip功能的小程序

首先需要明白dip和px代表什么意思. dip:device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关. px:pixels(像素),不同的设备不同的显示屏显示效果是相同的,这是绝对像素,是多少就永远是多少不会改变. dip的换算: dip = (int)  (px/1.5 + 0.5). 详细的介绍可以参考http://www.cnblogs.com/error404/archive/2011/11/03/2234165.html.

Android px转dip px转sp法则

在一些情况下,美工往往给我的都是px 这个时候我们就需要根据屏幕分辨率把px转成dip或者sp 下面就是计算公式: <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:l

Android屏幕分辨率概念(dp、dip、dpi、sp、px)

1.屏幕尺寸(screen size)就是我们平常讲的手机屏幕大小,是屏幕的对角线长度,一般讲的大小单位都是英寸.比如iPhone5S的屏幕尺寸是4英寸.Samsung Note3是5.7英寸. 2.像素(pixel)想像把屏幕放大再放大,对!看到的那一个个小点或者小方块就是像素了. 3.分辨率(Resolution)是指屏幕上垂直方向和水平方向上的像素个数.比如iPhone5S的分辨率是1136*640:Samsung Note3的分辨率是1920*1080: 4.dpi是dot per in

android px,dp,sp大小转换工具

package com.voole.playerlib.util; import android.content.Context; /** * Android大小单位转换工具类<br/> * * float scale = context.getResources().getDisplayMetrics().density; */ public class DisplayUtil { /** * 将px值转换为dip或dp值,保证尺寸大小不变 * * @param pxValue * @par

(转)Android中px与dip,sp与dip等的转换工具类

功能 通常在代码中设置组件或文字大小只能用px,通过这个工具类我们可以把dip(dp)或sp为单位的值转换为以px为单位的值而保证大小不变.方法中的参数请参考http://www.cnblogs.com/wader2011/archive/2011/11/28/2266669.html 代码 /** * Android大小单位转换工具类 *  * @author wader *  */public class DisplayUtil { /**  * 将px值转换为dip或dp值,保证尺寸大小不

Android 厘米转dip、px转dip 地图比例尺长度计算

主要解决问题: 1.Android各个长度单位转换为px(px.dip.mm等) 2.px和dip的转换 使用的工具类: 1.Android-API-工具类:TypedValue.applyDimension(int unit, float value,DisplayMetrics metrics);(大家最好读下附件中的TypedValue类源码) 参数说明: (1)unit:输入值的类型(px.dip.mm.sp等) (2)value:对应的值 (3)metrics:DisplayMetri