package com.flipkart.chatheads;
import android.content.Context;
import android.util.DisplayMetrics;
import android.util.TypedValue;
import android.view.WindowManager;
/**
* Created by kirankumar on 11/02/15.
*/
public class ChatHeadUtils {
/**
* Faster than {@link #dpToPx(Context, int)} since metrics is already present.
* Use this is you are able to cache the reference to display metrics
* @param metrics
* @param dp
* @return
*/
public static int dpToPx(DisplayMetrics metrics, int dp) {
float px = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, dp, metrics);
if (px < 1.0f) {
px = 1;
}
return (int) px;
}
public static int dpToPx(Context context, int dp) {
DisplayMetrics metrics = new DisplayMetrics();
WindowManager windowManager = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
windowManager.getDefaultDisplay().getMetrics(metrics);
return dpToPx(metrics, dp);
}
public static int pxToDp(Context context, int px) {
DisplayMetrics displayMetrics = context.getResources().getDisplayMetrics();
int dp = Math.round(px / (displayMetrics.xdpi / DisplayMetrics.DENSITY_DEFAULT));
return dp;
}
}