From 1283ec94de07ae7f062feb0944d33280d15e15ea Mon Sep 17 00:00:00 2001 From: jack <1484288157@qq.com> Date: Tue, 21 Dec 2021 10:09:07 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90=E5=85=89=E7=8E=AF=E5=8A=A9=E6=89=8BV5?= =?UTF-8?q?.5.0=E3=80=91=E5=90=8C=E6=AD=A5=E6=AD=A3=E5=BC=8F=E7=8E=AF?= =?UTF-8?q?=E5=A2=83=E5=90=8E=E6=B5=8B=E8=AF=95=E9=97=AE=E9=A2=98=E6=B1=87?= =?UTF-8?q?=E6=80=BB(12(1))=20https://git.shanqu.cc/pm/halo-app-issues/-/i?= =?UTF-8?q?ssues/1656?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/gh/gamecenter/entity/GamesCollectionEntity.kt | 4 ++++ .../gamecollection/publish/GameCollectionEditActivity.kt | 8 +++++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/com/gh/gamecenter/entity/GamesCollectionEntity.kt b/app/src/main/java/com/gh/gamecenter/entity/GamesCollectionEntity.kt index 7cc18c4a9c..6d7a3f52bf 100644 --- a/app/src/main/java/com/gh/gamecenter/entity/GamesCollectionEntity.kt +++ b/app/src/main/java/com/gh/gamecenter/entity/GamesCollectionEntity.kt @@ -38,6 +38,10 @@ class GamesCollectionEntity( var time: TimeEntity? = null, @Ignore var status: String = "",// draft/pending/pass/failed + + //本地字段 + @Ignore + var isLocalDraft: Boolean = false ) : Parcelable { fun getStatusLabelRes(): Int { diff --git a/app/src/main/java/com/gh/gamecenter/gamecollection/publish/GameCollectionEditActivity.kt b/app/src/main/java/com/gh/gamecenter/gamecollection/publish/GameCollectionEditActivity.kt index 52ae730cd9..4e02b75e58 100644 --- a/app/src/main/java/com/gh/gamecenter/gamecollection/publish/GameCollectionEditActivity.kt +++ b/app/src/main/java/com/gh/gamecenter/gamecollection/publish/GameCollectionEditActivity.kt @@ -139,7 +139,7 @@ class GameCollectionEditActivity : ToolBarActivity() { mViewModel.gameCollectionPatch?.run { mViewModel.imageUrl = cover - if (status.isNotEmpty() && (status != "draft" || display == "self_only")) { + if (status != "draft" && !isLocalDraft) { setNavigationTitle("编辑游戏单") } initPosterUI() @@ -204,6 +204,7 @@ class GameCollectionEditActivity : ToolBarActivity() { mViewModel.draftLiveData.observe(this) { mViewModel.gameCollectionPatch = it.convertGameCollectionEntity() mViewModel.gameCollectionPatch?.run { + isLocalDraft = true initData(false) mViewModel.tags = tags ?: arrayListOf() initTagsUI(mViewModel.tags) @@ -301,12 +302,12 @@ class GameCollectionEditActivity : ToolBarActivity() { override fun handleBackPressed(): Boolean { val patch = mViewModel.gameCollectionPatch - if (patch != null && patch.status.isNotEmpty() && (patch.status != "draft" || patch.display == "self_only")) { + if (patch != null && patch.status != "draft" && !patch.isLocalDraft) { DialogHelper.showDialog(this, "温馨提示", "退出将不会保留本次游戏单编辑的内容,是否确定退出", "确定", "取消", { finish() }, extraConfig = DialogHelper.Config(centerTitle = true, centerContent = true)) return true - } else { + } else if (patch == null || patch.isLocalDraft) { val games = mChooseGamesViewModel.chooseGamesLiveData.value ?: arrayListOf() val title = mBinding.gameCollectionTitleEt.text.toString() val introduce = mBinding.gameCollectionIntroduceEt.text.toString() @@ -371,6 +372,7 @@ class GameCollectionEditActivity : ToolBarActivity() { val patch = mViewModel.gameCollectionPatch if (patch != null + && !patch.isLocalDraft && !mBinding.selfOnlyCb.isChecked && games.size < 8 ) {