From 27d7958c1979a75cac2f820a75e6e6ac33652d63 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期五, 16 六月 2023 18:21:17 +0800
Subject: [PATCH] 2023年06月16日18:21:15
---
app/src/main/java/com/hdl/photovoltaic/other/HdlThreadLogic.java | 104 ++++++++++++++++++++++++++-------------------------
1 files changed, 53 insertions(+), 51 deletions(-)
diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlThreadLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlThreadLogic.java
index 40bb756..0922c13 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlThreadLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlThreadLogic.java
@@ -1,8 +1,12 @@
package com.hdl.photovoltaic.other;
+import android.app.Dialog;
import android.content.Context;
import android.os.Handler;
import android.os.Looper;
+import android.widget.Toast;
+
+import androidx.appcompat.app.AlertDialog;
import com.hdl.photovoltaic.enums.ShowErrorMode;
@@ -12,29 +16,13 @@
public class HdlThreadLogic {
private static final Handler handler = new Handler(Looper.getMainLooper());
- /**
- * 鍒囨崲鍥炰富绾跨▼
- *
- * @param run 鍥炶皟
- */
- public static void runMainThread(Runnable run) {
- try {
- if (Looper.myLooper() == Looper.getMainLooper()) {
- run.run();
- } else {
- handler.post(run);
- }
- } catch (Exception e) {
- exception(e, ShowErrorMode.YES);
- }
- }
/**
- * 鍒囨崲鍥炰富绾跨▼
+ * 鍒囨崲鍥炰富绾跨▼鎵ц
*
* @param run 鍥炶皟
- * @param context 涓婁笅鏂�
- * @param showErrorMode 鏄惁鏄剧ず閿欒
+ * @param context 涓婁笅鏂�(涓嶉渶瑕佸脊妗嗗~null)
+ * @param showErrorMode 鏄惁鏄剧ず閿欒(涓嶉渶瑕佹樉绀洪敊璇~null)
*/
public static void runMainThread(Runnable run, Context context, ShowErrorMode showErrorMode) {
try {
@@ -44,36 +32,17 @@
handler.post(run);
}
} catch (Exception e) {
- exception(e, showErrorMode);
+ exception(e, showErrorMode, context);
}
}
- /**
- * 瀛愮嚎绋�
- *
- * @param run 鍥炶皟
- */
- public static void runThread(Runnable run) {
-
- new Thread(new Runnable() {
- @Override
- public void run() {
- try {
- run.run();
- } catch (Exception e) {
- exception(e, ShowErrorMode.NO);
- }
- }
- }).start();
-
- }
/**
- * 瀛愮嚎绋�
+ * 瀛愮嚎绋嬫墽琛�
*
* @param run 鍥炶皟
- * @param context 涓婁笅鏂�
- * @param showErrorMode 鏄惁鏄剧ず閿欒
+ * @param context 涓婁笅鏂�(涓嶉渶瑕佸脊妗嗗~null)
+ * @param showErrorMode 鏄惁鏄剧ず閿欒(涓嶉渶瑕佸~null)
*/
public static void runThread(Runnable run, Context context, ShowErrorMode showErrorMode) {
@@ -83,7 +52,7 @@
try {
run.run();
} catch (Exception e) {
- exception(e, showErrorMode);
+ exception(e, showErrorMode, context);
}
}
}).start();
@@ -91,7 +60,40 @@
}
- private static void exception(Exception e, ShowErrorMode showErrorMode) {
+ /**
+ * 鍏ㄥ眬寮瑰嚭妗�,绯荤粺榛樿Toast
+ */
+ public static void toast(final Context context, final String text) {
+ handler.post(new Runnable() {
+ @Override
+ public void run() {
+ Toast.makeText(context, text, Toast.LENGTH_SHORT).show();
+ }
+ });
+ }
+
+ /**
+ * 鍏ㄥ眬寮瑰嚭妗�,绯荤粺榛樿Toast
+ */
+ public static void toast(final Context context, final int resId) {
+ handler.post(new Runnable() {
+ @Override
+ public void run() {
+ Toast.makeText(context, resId, Toast.LENGTH_SHORT).show();
+ }
+ });
+ }
+
+
+ /**
+ * @param e 寮傚父淇℃伅绫�
+ * @param context 涓婁笅鏂�(涓嶉渶瑕佸脊妗嗗~null)
+ * @param showErrorMode 鏄惁鏄剧ず閿欒(涓嶉渶瑕佸~null)
+ */
+ private static void exception(Exception e, ShowErrorMode showErrorMode, Context context) {
+ if (showErrorMode == null || context == null || e == null) {
+ return;
+ }
if (showErrorMode == ShowErrorMode.NO) {
return;
}
@@ -99,16 +101,16 @@
handler.post(new Runnable() {
@Override
public void run() {
-// Dialog alertDialog = new AlertDialog.Builder(HDLApp.getInstance().getApplicationContext()).
-// setTitle("鎶辨瓑绋嬪簭鍑虹幇閿欒浜�,鐐瑰嚮\"纭\"鑾峰彇鏇村璇︾粏淇℃伅.").
-// setMessage(e.getMessage()).
-// create();
-// alertDialog.show();
+ Dialog alertDialog = new AlertDialog.Builder(context).
+ setTitle("鎶辨瓑绋嬪簭鍑虹幇閿欒浜�,鐐瑰嚮\"纭\"鑾峰彇鏇村璇︾粏淇℃伅.").
+ setMessage(e.getMessage()).
+ create();
+ alertDialog.show();
//鎻愮ず
-// AlertDialog alertDialog=new AlertDialog(HDLApp.getInstance().getApplicationContext(), androidx.fragment.R.style.TextAppearance_Compat_Notification);
+// AlertDialog alertDialog = new AlertDialog(context, androidx.fragment.R.style.TextAppearance_Compat_Notification);
// alertDialog.setTitle("鎶辨瓑绋嬪簭鍑虹幇閿欒浜�");
// alertDialog.show();
- //Toast.makeText(HDLApp.getInstance().getApplicationContext(), "鎶辨瓑绋嬪簭鍑虹幇閿欒浜�", Toast.LENGTH_SHORT).show();
+// Toast.makeText(context, "鎶辨瓑绋嬪簭鍑虹幇閿欒浜�", Toast.LENGTH_SHORT).show();
}
});
--
Gitblit v1.8.0