android_图片px转dp

</pre><pre name="code" class="java">package com.lengxiaocai.myutil.screentool;

import android.content.Context;

/**
 *
 * @ClassName: ScreenTool
 *
 * @Description: 屏幕像素检测
 *
 * @author yazhizhao
 *
 * @date 2014-5-6 上午11:47:07
 */
public class ScreenTool {

	public static int dip2px(Context context, float dpValue) {
		final float scale = context.getResources().getDisplayMetrics().density;
		return (int) (dpValue * scale + 0.5f);
	}

	public static int px2dip(Context context, float pxValue) {
		final float scale = context.getResources().getDisplayMetrics().density;
		return (int) (pxValue / scale + 0.5f);
	}

	public static int px2sp(float pxValue, float fontScale) {
		return (int) (pxValue / fontScale + 0.5f);
	}

	public static int sp2px(float spValue, float fontScale) {
		return (int) (spValue * fontScale + 0.5f);
	}

}

android_图片px转dp,布布扣,bubuko.com

时间: 2024-12-15 06:56:44

android_图片px转dp的相关文章

【Android学习】android布局中几个距离单位的区别:px、dp、sp

一.px 像素,我们经常说的400*800这种的就是像素,这个比较好理解. 二.dp 要理解dp,首先要先引入dpi这个概念,dpi全称是dots per inch,对角线每英寸的像素点的个数,所以,它的计算公式如下: 比如height和width即为长宽的像素,平方和即为对角线的像素个数,size即我们常说的5寸手机.4寸手机中的5和4,即对角线的长度. 显然,一样是5寸的手机,分辨率越高,dpi越高. dp也叫dip,是device independent pixels.设备不依赖像素的一个

Android:px、dp和sp这些单位的区别

纠结了很久,px.dp.dip.sp有什么区别?纠结有时候用dp和dpi感觉没什么区别之类的问题. px(pixel): 即像素,1px代表屏幕上一个物理的像素点. px单位不被建议使用,因为同样100px的图片,在不同手机上显示的实际大小可能不同. dp(device independent pixels(设备独立像素)): 这个是最常用但也最难理解的尺寸单位.它与“像素密度”密切相关,所以首先我们解释一下什么是像素密度.假设有一部手机,屏幕的物理尺寸为1.5英寸x2英寸,屏幕分辨率为240x

Android基础知识px、dp、sp的理解

px就是pixels(像素),各种手机的像素是不同的,1px就是表示手机屏幕上的一个物理像素点.一块屏幕的分辨率为240*320,那么就是屏幕宽有240个像素点,屏幕高有320个像素点.如果屏幕大小不变,分辨率提高,那么相应的宽高的像素点变多了,这样画面看起来就更清晰,更细腻. dp就是dip,device independent pixels(设备独立像素)的缩写,以前经常使用dip,后来为了统一风格建议使用dp形式.dp做为单位的显示效果是跟屏幕的像素密度dpi(dots per inch)

Android px、dp和sp单位区别

[转]http://www.cnblogs.com/bjzhanghao/archive/2012/11/06/2757300.html 在调整布局的时候,某些控件的大小需要设置单位: px: 即像素,1px代表屏幕上一个物理的像素点: px单位不被建议使用,因为同样100px的图片,在不同手机上显示的实际大小可能不同,如下图所示(图片来自android developer guide,下同). 偶尔用到px的情况,是需要画1像素表格线或阴影线的时候,用其他单位如dp会显得模糊. dp: 这个是

Android单位转换 (px、dp、sp之间的转换工具类)

在Android开发中,涉及到屏幕视频问题的时候,px.dp.sp之间的转换比较重要的一部分,所以杨哥整理了一个工具类给大伙用. package com.zw.express.tool; import android.content.Context;import android.util.DisplayMetrics;/** * ydc * @author Administrator * */public class DensityUtils { /**     * 根据手机的分辨率从 dip

px、dp与sp的区别以及换算

1.px 即像素,1px代表屏幕上的一个物理像素点. 2.dp dip:device independent pixels(设备独立像素),dp与dip一样,不同的设备有不同的显示效果,一般为了支持WVGA.HVGA和QVGA推荐使用这个,不依赖像素. 3.sp sp:scale-independent pixels(缩放独立像素),与缩放无关的抽象像素,它和dp很相似,但唯一的区别在于,Android系统允许用户自定义文字尺寸大小(小,正常,大,超大等),当文字尺寸是“正常”时,1sp=1dp

Android 之px于dp在Java代码中的转换

现在由于用到了,使用代码进行动态布局,所以需要进行px于dp之间的转换. 现将其封装为方法,以便于调用. public int DpToPx(Context context,float dp){ float scale=context.getResource().getDisplayMetrics().density; return  (int) (dp * scale + 0.5f); } public int PxToDp(Context context,float px){ float s

px、dp和sp,这些单位有什么区别?

信每个Android新手都会遇到这个问题,希望这篇帖子能让你不再纠结. px: 即像素,1px代表屏幕上一个物理的像素点: px单位不被建议使用,因为同样100px的图片,在不同手机上显示的实际大小可能不同,如下图所示(图片来自android developer guide,下同). 偶尔用到px的情况,是需要画1像素表格线或阴影线的时候,用其他单位如dp会显得模糊. dp: 这个是最常用但也最难理解的尺寸单位.它与“像素密度”密切相关,所以首先我们解释一下什么是像素密度.假设有一部手机,屏幕的

px,sp,dp换算

PPI = Pixels per inch,每英寸上的像素数,即 "像素密度" xhdpi: 2.0 hdpi: 1.5 mdpi: 1.0 (baseline) ldpi: 0.75 drawable-ldpi.drawable-mdpi.drawable-hdpi 精度分别为低.中(android默认).高.对应的图片大小为:36x36.48x48.72x72. xxhdpi: 144*144 xhdpi:96*96 hdpi:72*72 mdpi:48*48 ldpi:36*36