【No7.】Android 像素转换工具

来源:互联网 发布:本地账户和网络账户 编辑:程序博客网 时间:2024/06/05 14:55
import android.content.Context;import android.content.res.Resources;import com.bmob.im.demo.CustomApplcation;/** * 像素转换工具 */public class PixelUtil {/** * The context. */private static Context mContext = CustomApplcation.getInstance();/** * dp转 px. *  * @param value *            the value * @return the int */public static int dp2px(float value) {final float scale = mContext.getResources().getDisplayMetrics().densityDpi;return (int) (value * (scale / 160) + 0.5f);}/** * dp转 px. *  * @param value *            the value * @param context *            the context * @return the int */public static int dp2px(float value, Context context) {final float scale = context.getResources().getDisplayMetrics().densityDpi;return (int) (value * (scale / 160) + 0.5f);}/** * px转dp. *  * @param value *            the value * @return the int */public static int px2dp(float value) {final float scale = mContext.getResources().getDisplayMetrics().densityDpi;return (int) ((value * 160) / scale + 0.5f);}/** * px转dp. *  * @param value *            the value * @param context *            the context * @return the int */public static int px2dp(float value, Context context) {final float scale = context.getResources().getDisplayMetrics().densityDpi;return (int) ((value * 160) / scale + 0.5f);}/** * sp转px. *  * @param value *            the value * @return the int */public static int sp2px(float value) {Resources r;if (mContext == null) {r = Resources.getSystem();} else {r = mContext.getResources();}float spvalue = value * r.getDisplayMetrics().scaledDensity;return (int) (spvalue + 0.5f);}/** * sp转px. *  * @param value *            the value * @param context *            the context * @return the int */public static int sp2px(float value, Context context) {Resources r;if (context == null) {r = Resources.getSystem();} else {r = context.getResources();}float spvalue = value * r.getDisplayMetrics().scaledDensity;return (int) (spvalue + 0.5f);}/** * px转sp. *  * @param value *            the value * @return the int */public static int px2sp(float value) {final float scale = mContext.getResources().getDisplayMetrics().scaledDensity;return (int) (value / scale + 0.5f);}/** * px转sp. *  * @param value *            the value * @param context *            the context * @return the int */public static int px2sp(float value, Context context) {final float scale = context.getResources().getDisplayMetrics().scaledDensity;return (int) (value / scale + 0.5f);}}

0 0
原创粉丝点击