Android px,dp,pt,sp的差别

px(像素点) mm 等Android不建议用

为什么电脑web开发能够用而Android不建议用?

由于px代表像素点个数,一般电脑分辨率都同样

不管14寸还是15寸都是1366*768而手机分辨率一般都不一样

googe解决方式:

dp(dip)(依据屏幕密度依据像素算出来的)

同样屏幕大小的手机,密度(分辨率)不同。使用px会显示大小不同的view使用dp同样dp长度的组件。终于显示大小是同样的

建议:

dp(dip)表示控件的宽度和高度

sp 文字大小

分辨率问题:

例:320*480(5寸)

代表:横向上有320个像素点

      纵向上有480个像素点

     480*800(5寸)

屏幕大小一样像素大的,像点密度高

/**
	 * 将dp转换为px
	 * 
	 * @param context
	 * @param dpValue
	 * @return
	 */
	public static int dip2px(Context context, float dpValue) { 
		final float scale = context.getResources().getDisplayMetrics().density; 
		return (int) (dpValue * scale + 0.5f);
	}


原文地址:https://www.cnblogs.com/mthoutai/p/7066134.html