Android - DIP to PX or PX to DIP
public static int dpToPx(Context context, int dp) {
Resources r = context.getResources();
float px = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, dp, r.getDisplayMetrics());
return (int) px;
}
public static int pxToDp(Context context, int px) {
final float scale = context.getResources().getDisplayMetrics().density;
int dp = (int) (px * scale + 0.5f);
return dp;
}