From 5cbfc7b461877cfef83890ce51ef53ee1f261c7e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E7=8E=89=E4=B9=85?= <1484288157@qq.com> Date: Fri, 12 Jun 2020 10:43:48 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B8=B8=E6=88=8F=E8=AF=84=E8=AE=BA=E3=80=81?= =?UTF-8?q?=E6=92=B0=E5=86=99=E9=97=AE=E7=AD=94=E3=80=81=E6=92=B0=E5=86=99?= =?UTF-8?q?=E6=96=87=E7=AB=A0toast=E5=B1=85=E4=B8=AD=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/gh/common/util/ToastUtils.kt | 15 +++++++++++++ .../rating/edit/RatingEditActivity.kt | 7 +++--- .../qa/answer/edit/AnswerEditActivity.kt | 22 +++++++++++-------- .../qa/article/edit/ArticleEditViewModel.kt | 14 ++++++++---- 4 files changed, 42 insertions(+), 16 deletions(-) diff --git a/app/src/main/java/com/gh/common/util/ToastUtils.kt b/app/src/main/java/com/gh/common/util/ToastUtils.kt index 46d1074d94..08204262a3 100644 --- a/app/src/main/java/com/gh/common/util/ToastUtils.kt +++ b/app/src/main/java/com/gh/common/util/ToastUtils.kt @@ -7,10 +7,13 @@ import com.halo.assistant.HaloApp object ToastUtils { /** 之前显示的内容 */ private var mOldMsg: String? = null + /** Toast对象 */ private var mToast: Toast? = null + /** 第一次时间 */ private var mOneTime: Long = 0 + /** 第二次时间 */ private var mTwoTime: Long = 0 @@ -19,19 +22,31 @@ object ToastUtils { * @param message */ fun showToast(message: String) { + showToast(message, -1) + } + + /** + * 显示Toast + * @param message + * @param gravity + */ + fun showToast(message: String, gravity: Int = -1) { if (mToast == null) { mToast = Toast.makeText(HaloApp.getInstance().application, message, Toast.LENGTH_SHORT) + if (gravity != -1) mToast!!.setGravity(gravity, 0, 0) mToast!!.show() mOneTime = System.currentTimeMillis() } else { mTwoTime = System.currentTimeMillis() if (message == mOldMsg) { if (mTwoTime - mOneTime > Toast.LENGTH_SHORT) { + if (gravity != -1) mToast!!.setGravity(gravity, 0, 0) mToast!!.show() } } else { mOldMsg = message mToast!!.setText(message) + if (gravity != -1) mToast!!.setGravity(gravity, 0, 0) mToast!!.show() } } diff --git a/app/src/main/java/com/gh/gamecenter/gamedetail/rating/edit/RatingEditActivity.kt b/app/src/main/java/com/gh/gamecenter/gamedetail/rating/edit/RatingEditActivity.kt index 89f42dbdff..0a79466c67 100644 --- a/app/src/main/java/com/gh/gamecenter/gamedetail/rating/edit/RatingEditActivity.kt +++ b/app/src/main/java/com/gh/gamecenter/gamedetail/rating/edit/RatingEditActivity.kt @@ -7,6 +7,7 @@ import android.content.Intent import android.os.Build import android.os.Bundle import android.text.TextUtils +import android.view.Gravity import android.view.MenuItem import android.view.View import android.webkit.* @@ -340,16 +341,16 @@ class RatingEditActivity : ToolBarActivity() { mBinding.mWebView.callHandler("getComment", OnReturnValue { content -> val rating = mBinding.ratingScore.rating if (rating == 0F) { - toast("请先给游戏打分") + ToastUtils.showToast("请先给游戏打分", Gravity.CENTER) return@OnReturnValue } if (content.isEmpty()) { - toast("评论内容不能为空喔~") + ToastUtils.showToast("评论内容不能为空喔~", Gravity.CENTER) return@OnReturnValue } if (content.length > 10000) { - toast("评论最多10000个字") + ToastUtils.showToast("评论最多10000个字", Gravity.CENTER) return@OnReturnValue } diff --git a/app/src/main/java/com/gh/gamecenter/qa/answer/edit/AnswerEditActivity.kt b/app/src/main/java/com/gh/gamecenter/qa/answer/edit/AnswerEditActivity.kt index ce8e60be66..f5801e8913 100644 --- a/app/src/main/java/com/gh/gamecenter/qa/answer/edit/AnswerEditActivity.kt +++ b/app/src/main/java/com/gh/gamecenter/qa/answer/edit/AnswerEditActivity.kt @@ -7,9 +7,11 @@ import android.content.Intent import android.os.Bundle import android.os.Message import android.text.TextUtils +import android.view.Gravity import android.view.MenuItem import android.view.View import android.view.inputmethod.InputMethodManager +import androidx.core.content.ContextCompat import androidx.lifecycle.Observer import androidx.lifecycle.ViewModelProviders import butterknife.OnClick @@ -357,17 +359,19 @@ class AnswerEditActivity : BaseRichEditorActivity(), KeyboardHeightObserver { // filter rule val answerLength = HtmlUtils.stripHtml(answerContent).length if (answerLength < MIN_ANSWER_TEXT_LENGTH) { - toast(R.string.answer_beneath_length_limit) +// toast(R.string.answer_beneath_length_limit) + ToastUtils.showToast(getString(R.string.answer_beneath_length_limit), Gravity.CENTER) return@postDelayed } else if (answerLength > MAX_ANSWER_TEXT_LENGTH) { - DialogUtils.showAlertDialog(this, - getString(R.string.answer_post_failed), - getString(R.string.answer_exceed_length_limit, - MAX_ANSWER_TEXT_LENGTH, - answerLength - MAX_ANSWER_TEXT_LENGTH), - getString(R.string.answer_resume_edit), "", { - // do nothing - }, null) + /* DialogUtils.showAlertDialog(this, + getString(R.string.answer_post_failed), + getString(R.string.answer_exceed_length_limit, + MAX_ANSWER_TEXT_LENGTH, + answerLength - MAX_ANSWER_TEXT_LENGTH), + getString(R.string.answer_resume_edit), "", { + // do nothing + }, null)*/ + ToastUtils.showToast("回答最多输入10000个字", Gravity.CENTER) return@postDelayed } mViewModel.postAnswer(answerContent) diff --git a/app/src/main/java/com/gh/gamecenter/qa/article/edit/ArticleEditViewModel.kt b/app/src/main/java/com/gh/gamecenter/qa/article/edit/ArticleEditViewModel.kt index ea5c2fccb6..73eaa7ded1 100644 --- a/app/src/main/java/com/gh/gamecenter/qa/article/edit/ArticleEditViewModel.kt +++ b/app/src/main/java/com/gh/gamecenter/qa/article/edit/ArticleEditViewModel.kt @@ -3,6 +3,7 @@ package com.gh.gamecenter.qa.article.edit import android.app.Application import android.content.Intent import android.text.TextUtils +import android.view.Gravity import androidx.lifecycle.AndroidViewModel import androidx.lifecycle.MediatorLiveData import androidx.lifecycle.MutableLiveData @@ -39,6 +40,7 @@ class ArticleEditViewModel(application: Application) : AndroidViewModel(applicat private val mApi = RetrofitManager.getInstance(getApplication()).api val MIN_ARTICLE_TEXT_LENGTH = 6 + val MAX_ARTICLE_TEXT_LENGTH = 10000 val processDialog = MediatorLiveData() val postImageLiveData = MediatorLiveData>>() @@ -86,12 +88,12 @@ class ArticleEditViewModel(application: Application) : AndroidViewModel(applicat */ fun checkDataAndLoadTitleTag() { if (mSelectCommunityData == null) { - Utils.toast(getApplication(), "请选择游戏") + ToastUtils.showToast("请选择游戏", Gravity.CENTER) return } if (TextUtils.isEmpty(title)) { - Utils.toast(getApplication(), "标题不能为空") + ToastUtils.showToast("标题不能为空", Gravity.CENTER) return } @@ -100,13 +102,17 @@ class ArticleEditViewModel(application: Application) : AndroidViewModel(applicat // title = title?.replace(" ", "")?.replace("\n", "") title = title?.replace("\n", "") if (title!!.length < QuestionEditViewModel.QUESTION_TITLE_MIN_LENGTH) { - Utils.toast(getApplication(), "标题至少${QuestionEditViewModel.QUESTION_TITLE_MIN_LENGTH}个字") + ToastUtils.showToast("标题至少${QuestionEditViewModel.QUESTION_TITLE_MIN_LENGTH}个字", Gravity.CENTER) return } val articleContent = HtmlUtils.stripHtml(content).length if (articleContent < MIN_ARTICLE_TEXT_LENGTH) { - Utils.toast(getApplication(), "正文至少${QuestionEditViewModel.QUESTION_TITLE_MIN_LENGTH}个字") + ToastUtils.showToast("正文至少${QuestionEditViewModel.QUESTION_TITLE_MIN_LENGTH}个字", Gravity.CENTER) + return + } + if (articleContent > MAX_ARTICLE_TEXT_LENGTH) { + ToastUtils.showToast("文章最多输入${MAX_ARTICLE_TEXT_LENGTH}个字", Gravity.CENTER) return }