package xyz.yhsj.yhutils.string;
import android.content.Context;
import android.util.TypedValue;
import xyz.yhsj.yhutils.logutils.LogUtils;
/**
* 单位转换 工具类<br>
*/
public class DensityUtils {
/**
* dp转px
*/
public static int dp2px(Context context, float dpVal) {
int result = (int) TypedValue.applyDimension(
TypedValue.COMPLEX_UNIT_DIP, dpVal, context.getResources()
.getDisplayMetrics());
LogUtils.i("dp-->px:" + result);
return result;
}
/**
* sp转px
*/
public static int sp2px(Context context, float spVal) {
int result = (int) TypedValue.applyDimension(
TypedValue.COMPLEX_UNIT_SP, spVal, context.getResources()
.getDisplayMetrics());
LogUtils.i("sp-->px:" + result);
return result;
}
/**
* px转dp
*/
public static int px2dp(Context context, float pxVal) {
final float scale = context.getResources().getDisplayMetrics().density;
int result = (int) (pxVal / scale);
LogUtils.i("px-->dp:" + result);
return result;
}
/**
* px转sp
*/
public static float px2sp(Context context, float pxVal) {
int result = (int) (pxVal / context.getResources().getDisplayMetrics().scaledDensity);
LogUtils.i("px-->sp:" + result);
return result;
}
}