Created
February 20, 2018 00:58
-
-
Save seventhmoon/361f1cedfc0a150712bb096ec1297faa to your computer and use it in GitHub Desktop.
Helper Utility for Android
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import android.content.Context; | |
import android.graphics.Point; | |
import android.view.Display; | |
import android.view.WindowManager; | |
import android.widget.Toast; | |
/** | |
* A collection of utility methods, all static. | |
*/ | |
public class Utils { | |
/* | |
* Making sure public utility methods remain static | |
*/ | |
private Utils() { | |
} | |
/** | |
* Returns the screen/display size | |
* | |
* @param context | |
* @return | |
*/ | |
public static Point getDisplaySize(Context context) { | |
WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE); | |
Display display = wm.getDefaultDisplay(); | |
Point size = new Point(); | |
display.getSize(size); | |
int width = size.x; | |
int height = size.y; | |
return new Point(width, height); | |
} | |
// /** | |
// * Shows an error dialog with a given text message. | |
// * | |
// * @param context | |
// * @param errorString | |
// */ | |
// | |
// public static final void showErrorDialog(Context context, String errorString) { | |
// new AlertDialog.Builder(context).setTitle(R.string.error) | |
// .setMessage(errorString) | |
// .setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() { | |
// @Override | |
// public void onClick(DialogInterface dialog, int id) { | |
// dialog.cancel(); | |
// } | |
// }) | |
// .create() | |
// .show(); | |
// } | |
/** | |
* Shows a (long) toast | |
* | |
* @param context | |
* @param msg | |
*/ | |
public static void showToast(Context context, String msg) { | |
Toast.makeText(context, msg, Toast.LENGTH_LONG).show(); | |
} | |
/** | |
* Shows a (long) toast. | |
* | |
* @param context | |
* @param resourceId | |
*/ | |
public static void showToast(Context context, int resourceId) { | |
Toast.makeText(context, context.getString(resourceId), Toast.LENGTH_LONG).show(); | |
} | |
/** | |
* Formats time in milliseconds to hh:mm:ss string format. | |
* | |
* @param millis | |
* @return | |
*/ | |
public static String formatMillis(int millis) { | |
String result = ""; | |
int hr = millis / 3600000; | |
millis %= 3600000; | |
int min = millis / 60000; | |
millis %= 60000; | |
int sec = millis / 1000; | |
if (hr > 0) { | |
result += hr + ":"; | |
} | |
if (min >= 0) { | |
if (min > 9) { | |
result += min + ":"; | |
} else { | |
result += "0" + min + ":"; | |
} | |
} | |
if (sec > 9) { | |
result += sec; | |
} else { | |
result += "0" + sec; | |
} | |
return result; | |
} | |
public static int dpToPx(int dp, Context ctx) { | |
float density = ctx.getResources().getDisplayMetrics().density; | |
return Math.round((float) dp * density); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment