From ceb91122b03a71d2f152f6a7797bf5d632981d7c Mon Sep 17 00:00:00 2001
From: renhaoting <370797079@qq.com>
Date: Mon, 12 Jan 2026 11:15:27 +0800
Subject: [PATCH] =?UTF-8?q?=E8=87=AA=E5=AE=9A=E4=B9=89=20view=20toast?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../src/main/res/drawable/bg_custom_toast.xml | 11 +++++++
.../ama/core/architecture/util/AndroidUtil.kt | 20 ++++++++++++
.../main/res/layout/layout_toast_center.xml | 32 +++++++++++++++++++
3 files changed, 63 insertions(+)
create mode 100644 bill/src/main/res/drawable/bg_custom_toast.xml
create mode 100644 core/architecture/src/main/res/layout/layout_toast_center.xml
diff --git a/bill/src/main/res/drawable/bg_custom_toast.xml b/bill/src/main/res/drawable/bg_custom_toast.xml
new file mode 100644
index 0000000..4c051a6
--- /dev/null
+++ b/bill/src/main/res/drawable/bg_custom_toast.xml
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/core/architecture/src/main/java/com/ama/core/architecture/util/AndroidUtil.kt b/core/architecture/src/main/java/com/ama/core/architecture/util/AndroidUtil.kt
index 773e72a..f89ba3f 100644
--- a/core/architecture/src/main/java/com/ama/core/architecture/util/AndroidUtil.kt
+++ b/core/architecture/src/main/java/com/ama/core/architecture/util/AndroidUtil.kt
@@ -12,14 +12,20 @@ import android.os.Handler
import android.os.Looper
import android.provider.Settings
import android.view.Gravity
+import android.view.LayoutInflater
import android.view.PixelCopy
import android.view.View
import android.view.Window
import android.webkit.WebView
+import android.widget.ImageView
import android.widget.Toast
+import androidx.appcompat.widget.AppCompatImageView
+import androidx.appcompat.widget.AppCompatTextView
import androidx.core.app.NotificationManagerCompat
import androidx.core.graphics.createBitmap
import com.ama.core.architecture.BaseApp
+import com.ama.core.architecture.R
+import com.ama.core.architecture.databinding.LayoutToastCenterBinding
import com.google.android.gms.ads.identifier.AdvertisingIdClient
import com.google.gson.Gson
import com.google.gson.reflect.TypeToken
@@ -32,6 +38,7 @@ class AndroidUtil private constructor() {
companion object {
val gson: Gson = Gson()
+
fun genRandomInt(rangeBegin: Int, rangeEnd: Int): Int {
return Random.nextInt(rangeBegin, rangeEnd)
}
@@ -75,6 +82,19 @@ class AndroidUtil private constructor() {
}
}
+ fun showCustomToast(textStr: String, iconRes: Int) {
+ val layout: View = LayoutInflater.from(BaseApp.appContext()).inflate(R.layout.layout_toast_center, null)
+ layout.findViewById(R.id.iv_top).setImageResource(iconRes)
+ layout.findViewById(R.id.tv_bottom).text = textStr
+
+ Toast(BaseApp.appContext()).apply {
+ duration = Toast.LENGTH_SHORT
+ setGravity(Gravity.CENTER or Gravity.CENTER_HORIZONTAL, 0, 10)
+ setView(layout)
+ show()
+ }
+ }
+
fun openUrl(url: String) {
val appContext = BaseApp.appContext()
val intent = Intent(Intent.ACTION_VIEW, Uri.parse(url))
diff --git a/core/architecture/src/main/res/layout/layout_toast_center.xml b/core/architecture/src/main/res/layout/layout_toast_center.xml
new file mode 100644
index 0000000..0a21433
--- /dev/null
+++ b/core/architecture/src/main/res/layout/layout_toast_center.xml
@@ -0,0 +1,32 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file