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