提交 48fe6569 编写于 作者: J JessYan

Improve ArmsUtils

上级 8e252e60
......@@ -20,6 +20,7 @@ import android.content.Context;
import android.content.Intent;
import android.content.res.Resources;
import android.graphics.drawable.Drawable;
import android.support.annotation.NonNull;
import android.support.design.widget.Snackbar;
import android.support.v7.widget.DefaultItemAnimator;
import android.support.v7.widget.RecyclerView;
......@@ -76,18 +77,54 @@ public class ArmsUtils {
v.setHint(new SpannedString(ss)); // 一定要进行转换,否则属性会消失
}
/**
* dip转pix
* dp 转 px
*
* @param dpValue
* @return
* @param context {@link Context}
* @param dpValue {@code dpValue}
* @return {@code pxValue}
*/
public static int dip2px(Context context, float dpValue) {
public static int dip2px(@NonNull Context context, float dpValue) {
final float scale = getResources(context).getDisplayMetrics().density;
return (int) (dpValue * scale + 0.5f);
}
/**
* px 转 dp
*
* @param context {@link Context}
* @param pxValue {@code pxValue}
* @return {@code dpValue}
*/
public static int pix2dip(@NonNull Context context, int pxValue) {
final float scale = getResources(context).getDisplayMetrics().density;
return (int) (pxValue / scale + 0.5f);
}
/**
* sp 转 px
*
* @param context {@link Context}
* @param spValue {@code spValue}
* @return {@code pxValue}
*/
public static int sp2px(@NonNull Context context, float spValue) {
final float fontScale = getResources(context).getDisplayMetrics().scaledDensity;
return (int) (spValue * fontScale + 0.5f);
}
/**
* px 转 sp
*
* @param context {@link Context}
* @param pxValue {@code pxValue}
* @return {@code spValue}
*/
public static int px2sp(@NonNull Context context, float pxValue) {
final float fontScale = getResources(context).getDisplayMetrics().scaledDensity;
return (int) (pxValue / fontScale + 0.5f);
}
/**
* 获得资源
*/
......@@ -102,15 +139,6 @@ public class ArmsUtils {
return getResources(context).getStringArray(id);
}
/**
* pix转dip
*/
public static int pix2dip(Context context, int pix) {
final float densityDpi = getResources(context).getDisplayMetrics().density;
return (int) (pix / densityDpi + 0.5f);
}
/**
* 从 dimens 中获得尺寸
*
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册