`
men4661273
  • 浏览: 275310 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

android中使用代码适配屏幕,dp与px互转、sp与px互转

阅读更多
	package com.xjw.util;

import android.content.Context;
	/**      
 * 项目名称:translate  
 * 实现功能:  显示设置相关工具类
 * 类名称:DisplayUtil   
 * 类描述:(该类的主要功能)
 * 创建人:徐纪伟 
 * E-mail: xujiwei558@126.com
 * 创建时间:2014年10月21日 下午9:45:18   
 * 修改人:   
 * 修改时间:   
 * 修改备注:   
 * @version    
 */
public class DisplayUtil {
	/**
		* @方法名称: px2dip
		* @描述: 将px值转换为dip或dp值
		* @param   @param context
		* @param   @param pxValue
		* @param   @return 
		* @return int 
		* @throws 
		* @author 徐纪伟
		* 2014年10月24日 下午9:59:08
	 */
	public static int px2dip(Context context, float pxValue) {
		final float scale = context.getResources().getDisplayMetrics().density;
		return (int) (pxValue / scale + 0.5f);
	}

	/**
	 * 
		* @方法名称: dip2px
		* @描述: 将dip或dp值转换为px值
		* @param   @param context
		* @param   @param dipValue
		* @param   @return 
		* @return int 
		* @throws 
		* @author 徐纪伟
		* 2014年10月24日 下午9:59:53
	 */
	public static int dip2px(Context context, float dipValue) {
		final float scale = context.getResources().getDisplayMetrics().density;
		return (int) (dipValue * scale + 0.5f);
	}

	
	/**
	 * 
		* @方法名称: px2sp
		* @描述: 将px值转换为sp值
		* @param   @param context
		* @param   @param pxValue
		* @param   @return 
		* @return int 
		* @throws 
		* @author 徐纪伟
		* 2014年10月24日 下午10:00:36
	 */
	public static int px2sp(Context context, float pxValue) {
		final float fontScale = context.getResources().getDisplayMetrics().scaledDensity;
		return (int) (pxValue / fontScale + 0.5f);
	}
	
	/**
	 * 
		* @方法名称: sp2px
		* @描述: 将sp值转换为px值
		* @param   @param context
		* @param   @param spValue
		* @param   @return 
		* @return int 
		* @throws 
		* @author 徐纪伟
		* 2014年10月24日 下午10:01:01
	 */
	public static int sp2px(Context context, float spValue) {
		final float fontScale = context.getResources().getDisplayMetrics().scaledDensity;
		return (int) (spValue * fontScale + 0.5f);
	}
}

 

分享到:
评论

相关推荐

    Android适配屏幕文档

    Android屏幕适配,包括px sp dp 转换等等

    dimens资源文件实现px值与dp值、sp值之间的转化

    里面有详细的px值在不同分辨率下对应的sp值、dp值,用于UI适配,直接导入项目的资源文件目录下,通过R.dimen.xxx来进行引用,从此不用写多套布局文件,一套layout搞定。

    修改系统density、densityDpi适配

    文章目录一、简述二、追根溯源三、实现3.1 定义Density用于对系统类值的修改3.2 在MainActivity中调用3.3 处理应用程序关于字体大小的监听3.4...每个控件的显示,dp、sp等最终都会转换成px为单位,原因在于android源码T

    FitScreen:Android屏幕适配的一种方案,包含自动生成xml文件jar包,自动替换dp,sp的jar包。-源码包

    Android屏幕适应的一种方案,包含自动生成xml文件jar包,自动替换dp,sp的jar包。顺便附带上源码。 背景说明 最开始使用dp设置控件尺寸,在hornor v8 1440x2560的手机显示正常,到了三星Galaxy On7 1080x1920的手机...

    前端之Android:屏幕适配

    在Android中,定义组件尺寸的单位通常有dp和sp,那么它们跟我们经常使用的px有什么区别呢?px是Pixels的缩写,是常用的像素单位,对应的是屏幕上的点。移动设备的尺寸有很多种,它们的屏幕总像素也是不同的,使用px...

    Android与设计师方便沟通的适配方案

    经常遇到这样的问题,设计师给的单位是px,而我们用的单位是dip或sp,所以交流经常出现问题。后来研究出一套方案,可以很好地适配,而且与设计师很好的沟通。...这样做我们就需要将px转成我们对应的dp,sp值了。

    android适配方案1

    Dp和px的换算公式:px = dp * (dpi / 160)dp是与像素无关的,在实际使用中1dp大约等于1/160inch。目前所用方法1.使用dp、sp

    集成目前Android主流优秀第三方组件

    Android单位转换工具类(ToolUnit.java),sp/dp/px互转 自定义Toast工具类(ToolToast.java),自定义背景色、字体颜色、大小、边框等 Properties操作工具类(ToolProperties.java),读写Properties文件操作 网络操作...

    Android集成主流优秀第三方组件框架

    Android单位转换工具类(ToolUnit.java),sp/dp/px互转 自定义Toast工具类(ToolToast.java),自定义背景色、字体颜色、大小、边框等 Properties操作工具类(ToolProperties.java),读写Properties文件操作 网络操作...

    Android例子源码集成安卓主流优秀第三方组件框架.zip

    Android单位转换工具类(ToolUnit.java),sp/dp/px互转 自定义Toast工具类(ToolToast.java),自定义背景色、字体颜色、大小、边框等 Properties操作工具类(ToolProperties.java),读写Properties文件操作 网络...

    集成安卓主流优秀第三方组件框架.zip

    Android单位转换工具类(ToolUnit.java),sp/dp/px互转 自定义Toast工具类(ToolToast.java),自定义背景色、字体颜色、大小、边框等 Properties操作工具类(ToolProperties.java),读写Properties文件操作 网络...

Global site tag (gtag.js) - Google Analytics