|
|
@@ -14,17 +14,42 @@ public class ToastTool {
|
|
|
private static final long PERIOD_SHORT = 1500L;
|
|
|
private static final long PERIOD_LONG = 2500L;
|
|
|
|
|
|
- private ToastTool() { }
|
|
|
+ private ToastTool() {
|
|
|
+ }
|
|
|
|
|
|
private static long mLastShortToastMillis;
|
|
|
private static long mLastLongToastMillis;
|
|
|
|
|
|
private static int mVerticalMargin = 0;
|
|
|
|
|
|
+ private static void showShortOnUiThread(final String text) {
|
|
|
+ ContextManager.getInstance().runOnUiThread(new Runnable() {
|
|
|
+ @Override
|
|
|
+ public void run() {
|
|
|
+ Context context = ContextManager.getInstance().getContext();
|
|
|
+ if (context == null) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ initMargin(context);
|
|
|
+ if (System.currentTimeMillis() - mLastShortToastMillis > PERIOD_SHORT) {
|
|
|
+ mLastShortToastMillis = System.currentTimeMillis();
|
|
|
+ Toast toast = Toast.makeText(context, text, Toast.LENGTH_SHORT);
|
|
|
+ toast.setGravity(Gravity.BOTTOM | Gravity.CENTER_HORIZONTAL, 0, mVerticalMargin);
|
|
|
+ toast.show();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* @param text 要弹出的语句
|
|
|
*/
|
|
|
public static void showShort(String text) {
|
|
|
+ showShortOnUiThread(text);
|
|
|
+ }
|
|
|
+
|
|
|
+ private static void showLongOnUiThread(String text) {
|
|
|
Context context = ContextManager.getInstance().getContext();
|
|
|
if (context == null) {
|
|
|
return;
|
|
|
@@ -32,10 +57,10 @@ public class ToastTool {
|
|
|
|
|
|
initMargin(context);
|
|
|
|
|
|
- if (System.currentTimeMillis() - mLastShortToastMillis > PERIOD_SHORT) {
|
|
|
- mLastShortToastMillis = System.currentTimeMillis();
|
|
|
- Toast toast = Toast.makeText(context, text, Toast.LENGTH_SHORT);
|
|
|
- toast.setGravity(Gravity.BOTTOM|Gravity.CENTER_HORIZONTAL, 0, mVerticalMargin);
|
|
|
+ if (System.currentTimeMillis() - mLastLongToastMillis > PERIOD_LONG) {
|
|
|
+ mLastLongToastMillis = System.currentTimeMillis();
|
|
|
+ Toast toast = Toast.makeText(context, text, Toast.LENGTH_LONG);
|
|
|
+ toast.setGravity(Gravity.BOTTOM | Gravity.CENTER_HORIZONTAL, 0, mVerticalMargin);
|
|
|
toast.show();
|
|
|
}
|
|
|
}
|
|
|
@@ -44,19 +69,7 @@ public class ToastTool {
|
|
|
* @param text 要弹出的语句
|
|
|
*/
|
|
|
public static void showLong(String text) {
|
|
|
- Context context = ContextManager.getInstance().getContext();
|
|
|
- if (context == null) {
|
|
|
- return;
|
|
|
- }
|
|
|
-
|
|
|
- initMargin(context);
|
|
|
-
|
|
|
- if (System.currentTimeMillis() - mLastLongToastMillis > PERIOD_LONG) {
|
|
|
- mLastLongToastMillis = System.currentTimeMillis();
|
|
|
- Toast toast = Toast.makeText(context, text, Toast.LENGTH_LONG);
|
|
|
- toast.setGravity(Gravity.BOTTOM|Gravity.CENTER_HORIZONTAL, 0, mVerticalMargin);
|
|
|
- toast.show();
|
|
|
- }
|
|
|
+ showLongOnUiThread(text);
|
|
|
}
|
|
|
|
|
|
private static void initMargin(Context context) {
|