ToastHelper.kt 1.33 KB
Newer Older
严久程 committed
1
package com.yidianling.ydl_pay.toast
2 3 4 5

import android.content.Context
import android.support.annotation.StringRes
import android.widget.Toast
konghaorui committed
6 7 8
import com.ydl.ydlcommon.base.BaseApp
import com.ydl.ydlcommon.utils.LogUtil
import com.yidianling.common.tools.ToastUtil
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35

/**
 * author : Zhangwenchao
 * e-mail : zhangwch@yidianling.com
 * time   : 2018/01/29
 *
 * 提示信息的封装类,使用单例 toast,防止重复弹出提示
 */
class ToastHelper private constructor() {

    private var toast: Toast? = null

    companion object {
        private fun getInstance(): ToastHelper {
            return Holder.INSTANCE
        }

        fun show(context: Context, text: String) {
            getInstance().show(context.applicationContext, text)
        }

        fun show(context: Context, @StringRes resId: Int) {
            getInstance().show(context.applicationContext, resId)
        }
    }

    private fun show(context: Context, text: CharSequence) {
konghaorui committed
36
        ToastUtil.toastShort(text.toString())
37 38 39
    }

    private fun show(context: Context, @StringRes resId: Int) {
konghaorui committed
40 41 42 43 44 45
        try {
            val text  = BaseApp.getApp().resources.getString(resId)
            ToastUtil.toastShort(text)
        } catch (e: Exception) {
            LogUtil.e(e.message)
        }
46 47 48 49 50 51
    }

    private object Holder {
        val INSTANCE = ToastHelper()
    }
}