package com.pan.simplepicture.utils;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.WindowManager;
/**
* Created by sysadminl on 2015/11/10.
*/
public class ContextUtils {
/**
* 将px值转换为sp值,保证文字大小不变
*
* @param pxValue
* @param fontScale
* (DisplayMetrics类中属性scaledDensity)
* @return
*/
public static int px2sp(Context context, float pxValue) {
final float fontScale = context.getResources().getDisplayMetrics().scaledDensity;
return (int) (pxValue / fontScale + 0.5f);
}
/** dip转换px */
public static int dip2px(Context context, float dip) {
final float scale = context.getResources().getDisplayMetrics().density;
return (int) (dip * scale + 0.5f);
}
/**
* 将sp值转换为px值,保证文字大小不变
*
* @param spValue
* @param fontScale
* (DisplayMetrics类中属性scaledDensity)
* @return
*/
public static int sp2px(Context context, float spValue) {
final float fontScale = context.getResources().getDisplayMetrics().scaledDensity;
return (int) (spValue * fontScale + 0.5f);
}
private static LayoutInflater inflater;
public static View inflate(Context context,int res){
if(inflater==null) {
inflater = LayoutInflater.from(context);
}
return inflater.inflate(res,null);
}
/**
* 获取屏幕宽
* @param context
* @return
*/
public static int getSreenWidth(Context context){
WindowManager wm=(WindowManager)context.getSystemService(Context.WINDOW_SERVICE);
return wm.getDefaultDisplay().getWidth();
}
/**
* 获取屏幕高
* @param context
* @return
*/
public static int getSreenHeight(Context context){
WindowManager wm=(WindowManager)context.getSystemService(Context.WINDOW_SERVICE);
return wm.getDefaultDisplay().getHeight();
}
}