From 408e44636e6b02c63257dd4ea20636c3d8b33045 Mon Sep 17 00:00:00 2001 From: kehaoyuan Date: Tue, 30 Oct 2018 17:19:32 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=89=E7=8E=AF=E5=8A=A9=E6=89=8BV3.5=20RELE?= =?UTF-8?q?ASE=EF=BC=8820181029-1825=EF=BC=89=E6=B5=8B=E8=AF=95=E9=97=AE?= =?UTF-8?q?=E9=A2=98=E6=B1=87=E6=80=BB=EF=BC=88=E5=89=8D=E7=AB=AF=EF=BC=89?= =?UTF-8?q?(1.11.12.13.14.15.16.17.19.20.21.22.23.25.27.28.29.30(=E7=A6=81?= =?UTF-8?q?=E6=AD=A2=E8=BE=93=E5=85=A5=E7=A9=BA=E6=A0=BC).31.32.34)https:/?= =?UTF-8?q?/gitlab.ghzhushou.com/pm/halo-app-issues/issues/380?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/gh/common/util/DialogUtils.java | 2 +- .../gh/gamecenter/SuggestSelectActivity.java | 23 +++- .../gh/gamecenter/entity/GameDetailEntity.kt | 2 +- .../java/com/gh/gamecenter/entity/MeEntity.kt | 3 + .../java/com/gh/gamecenter/entity/Rating.kt | 3 +- .../gh/gamecenter/entity/SettingsEntity.java | 34 ++++++ .../gamedetail/desc/DescCommentsAdapter.kt | 15 ++- .../gamedetail/rating/RatingAdapter.kt | 31 +++--- .../gamedetail/rating/RatingFragment.kt | 10 ++ .../rating/edit/RatingEditActivity.kt | 36 +++--- .../message/MessageItemViewHolder.java | 6 +- .../article/detail/ArticleDetailActivity.kt | 5 +- .../article/detail/ArticleDetailViewModel.kt | 4 +- .../qa/article/draft/ArticleDraftFragment.kt | 2 +- .../qa/article/edit/ArticleEditActivity.kt | 8 +- .../gh/gamecenter/qa/myqa/MyDraftAdapter.java | 2 +- .../qa/questions/detail/AnswerViewHolder.java | 1 + .../res/drawable-xhdpi/menu_more_report.png | Bin 1630 -> 1684 bytes .../main/res/layout/activity_rating_edit.xml | 1 + .../res/layout/ask_recommends_subject.xml | 5 +- .../collection_comunity_article_item.xml | 1 - .../res/layout/layout_menu_game_comment.xml | 2 +- .../main/res/layout/rating_comment_item.xml | 88 ++++++++------- app/src/main/res/layout/rating_item.xml | 105 +++++++++--------- app/src/main/res/menu/menu_game_comment.xml | 2 +- 25 files changed, 240 insertions(+), 151 deletions(-) diff --git a/app/src/main/java/com/gh/common/util/DialogUtils.java b/app/src/main/java/com/gh/common/util/DialogUtils.java index 42de2fc456..8352516a0c 100644 --- a/app/src/main/java/com/gh/common/util/DialogUtils.java +++ b/app/src/main/java/com/gh/common/util/DialogUtils.java @@ -372,7 +372,7 @@ public class DialogUtils { return false; } String mb = size.toUpperCase().replaceAll("MB", "").trim(); - Integer i = Integer.valueOf(mb); + Float i = Float.valueOf(mb); if (NetworkUtils.isWifiOr4GConnected(context) && i <= 50) { Utils.toast(context, "当前使用移动流量下载"); return true; diff --git a/app/src/main/java/com/gh/gamecenter/SuggestSelectActivity.java b/app/src/main/java/com/gh/gamecenter/SuggestSelectActivity.java index eb634cf78c..679cd95e01 100644 --- a/app/src/main/java/com/gh/gamecenter/SuggestSelectActivity.java +++ b/app/src/main/java/com/gh/gamecenter/SuggestSelectActivity.java @@ -4,12 +4,17 @@ import android.content.Context; import android.content.Intent; import android.os.Bundle; import android.support.annotation.NonNull; +import android.text.TextUtils; import android.view.View; +import android.widget.TextView; import com.gh.base.BaseActivity; +import com.gh.common.constant.Config; import com.gh.common.util.DirectUtils; +import com.gh.gamecenter.entity.SettingsEntity; import com.gh.gamecenter.suggest.SuggestType; +import butterknife.BindView; import butterknife.OnClick; /** @@ -19,6 +24,11 @@ public class SuggestSelectActivity extends BaseActivity { public final static int SUGGEST_TYPE_REQUEST = 11; // 只要进入反馈页面(下一个), 无论怎么回退当前页面都会退出 + @BindView(R.id.suggest_qqun) + public TextView qQun; + + private SettingsEntity mSettings; + @NonNull public static Intent getIntent(Context context) { Intent intent = new Intent(context, SuggestSelectActivity.class); @@ -42,6 +52,12 @@ public class SuggestSelectActivity extends BaseActivity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setNavigationTitle(getString(R.string.title_suggest_select)); + + mSettings = Config.getSettings(); + if (mSettings != null && mSettings.getSupport() != null && + !TextUtils.isEmpty(mSettings.getSupport().getqQun())) { + qQun.setText(mSettings.getSupport().getqQun()); + } } @OnClick({R.id.suggest_type1, R.id.suggest_type2, R.id.suggest_type3, R.id.suggest_type4, @@ -68,7 +84,12 @@ public class SuggestSelectActivity extends BaseActivity { type = SuggestType.articleCollect; break; case R.id.suggest_qqun_rl: - DirectUtils.directToQqGroup(this, "vd754P2_uNUJqDcgX4V-pyXEGZZVH0DE"); // Q群:367541038 KEY + String groupNumber = "vd754P2_uNUJqDcgX4V-pyXEGZZVH0DE"; + if (mSettings != null && mSettings.getSupport() != null && + !TextUtils.isEmpty(mSettings.getSupport().getqQunKey())) { + groupNumber = mSettings.getSupport().getqQunKey(); + } + DirectUtils.directToQqGroup(this, groupNumber); // Q群:367541038 KEY return; } diff --git a/app/src/main/java/com/gh/gamecenter/entity/GameDetailEntity.kt b/app/src/main/java/com/gh/gamecenter/entity/GameDetailEntity.kt index 1546a0ed9e..d5f8683ea5 100644 --- a/app/src/main/java/com/gh/gamecenter/entity/GameDetailEntity.kt +++ b/app/src/main/java/com/gh/gamecenter/entity/GameDetailEntity.kt @@ -63,7 +63,7 @@ class GameDetailEntity : Parcelable { var fulishuoming: String? = null @SerializedName("show_comment") - val showComment: Boolean? = true + val showComment: Boolean = false @SerializedName("me") var me: MeEntity = MeEntity() diff --git a/app/src/main/java/com/gh/gamecenter/entity/MeEntity.kt b/app/src/main/java/com/gh/gamecenter/entity/MeEntity.kt index 9491e3741e..c7e083531e 100644 --- a/app/src/main/java/com/gh/gamecenter/entity/MeEntity.kt +++ b/app/src/main/java/com/gh/gamecenter/entity/MeEntity.kt @@ -71,6 +71,9 @@ class MeEntity(@SerializedName("is_community_voted") @SerializedName("is_voted") var isVoted: Boolean = false, + @SerializedName("is_commented") + val isCommented: Boolean = false, + @SerializedName("libao") var userDataLibaoList: List? = null) : Parcelable { } \ No newline at end of file diff --git a/app/src/main/java/com/gh/gamecenter/entity/Rating.kt b/app/src/main/java/com/gh/gamecenter/entity/Rating.kt index 810b94119a..cb9a6da80f 100644 --- a/app/src/main/java/com/gh/gamecenter/entity/Rating.kt +++ b/app/src/main/java/com/gh/gamecenter/entity/Rating.kt @@ -3,8 +3,7 @@ package com.gh.gamecenter.entity class Rating(val star: Star = Star(), val device: String = "", val me: MeEntity = MeEntity(), - var isExistComment: Boolean = true, - val comment: RatingComment? = null) + var isExistComment: Boolean = true) class Star(var average: Float = 0F, val total: Int = 0, diff --git a/app/src/main/java/com/gh/gamecenter/entity/SettingsEntity.java b/app/src/main/java/com/gh/gamecenter/entity/SettingsEntity.java index 19ec84fbd6..837c876376 100644 --- a/app/src/main/java/com/gh/gamecenter/entity/SettingsEntity.java +++ b/app/src/main/java/com/gh/gamecenter/entity/SettingsEntity.java @@ -20,6 +20,8 @@ public class SettingsEntity { private Image image; + private Support support; + public List getDownload() { return download; } @@ -60,6 +62,14 @@ public class SettingsEntity { this.image = image; } + public Support getSupport() { + return support; + } + + public void setSupport(Support support) { + this.support = support; + } + public class Download { private String game; @@ -313,4 +323,28 @@ public class SettingsEntity { } } + public class Support { + @SerializedName("qq-group") + private String qQun; + + @SerializedName("qq-group-key") + private String qQunKey; + + public String getqQun() { + return qQun; + } + + public void setqQun(String qQun) { + this.qQun = qQun; + } + + public String getqQunKey() { + return qQunKey; + } + + public void setqQunKey(String qQunKey) { + this.qQunKey = qQunKey; + } + } + } diff --git a/app/src/main/java/com/gh/gamecenter/gamedetail/desc/DescCommentsAdapter.kt b/app/src/main/java/com/gh/gamecenter/gamedetail/desc/DescCommentsAdapter.kt index c984394215..63b909000c 100644 --- a/app/src/main/java/com/gh/gamecenter/gamedetail/desc/DescCommentsAdapter.kt +++ b/app/src/main/java/com/gh/gamecenter/gamedetail/desc/DescCommentsAdapter.kt @@ -14,6 +14,7 @@ import com.gh.gamecenter.baselist.ListAdapter import com.gh.gamecenter.databinding.RatingCommentItemBinding import com.gh.gamecenter.entity.RatingComment import com.gh.gamecenter.gamedetail.rating.RatingCommentItemViewHolder +import com.lightgame.utils.Utils class DescCommentsAdapter(context: Context, var mViewModel: DescViewModel, @@ -49,11 +50,15 @@ class DescCommentsAdapter(context: Context, binding.run { vote.setOnClickListener { CheckLoginUtils.checkLogin(mContext) { - mViewModel.voteComment(comment.id, callback = { - MtaHelper.onEvent("游戏详情", "玩家评论_点赞", mViewModel.game?.name) - vote.text = (comment.vote + 1).toString() - vote.isChecked = true - }) + if (!vote.isChecked) { + mViewModel.voteComment(comment.id, callback = { + MtaHelper.onEvent("游戏详情", "玩家评论_点赞", mViewModel.game?.name) + vote.text = (comment.vote + 1).toString() + vote.isChecked = true + }) + } else { + Utils.toast(mContext, "已经点赞了哟~") + } } } commentItem.setOnClickListener { diff --git a/app/src/main/java/com/gh/gamecenter/gamedetail/rating/RatingAdapter.kt b/app/src/main/java/com/gh/gamecenter/gamedetail/rating/RatingAdapter.kt index aed15a6e85..145644d5aa 100644 --- a/app/src/main/java/com/gh/gamecenter/gamedetail/rating/RatingAdapter.kt +++ b/app/src/main/java/com/gh/gamecenter/gamedetail/rating/RatingAdapter.kt @@ -19,6 +19,8 @@ import com.gh.gamecenter.databinding.RatingItemBinding import com.gh.gamecenter.entity.Rating import com.gh.gamecenter.entity.RatingComment import com.gh.gamecenter.gamedetail.rating.edit.RatingEditActivity +import com.gh.gamecenter.manager.InstallManager +import com.lightgame.utils.Utils class RatingAdapter(context: Context, private val mListViewModel: RatingViewModel, @@ -91,11 +93,6 @@ class RatingAdapter(context: Context, MtaHelper.onEvent("游戏详情", "评论Tab_点击我来评论", mListViewModel.game.name) skipRatingEdit(0.0F) } - includeComment.run { - if (this != null && ratingData?.comment != null) { - setCommentClick(this, ratingData?.comment!!) - } - } } } else if (holder is RatingCommentItemViewHolder) { holder.binding.run { @@ -110,14 +107,14 @@ class RatingAdapter(context: Context, private fun skipRatingEdit(starCount: Float) { CheckLoginUtils.checkLogin(mContext) { -// if (InstallManager(mContext).findInstallById(mListViewModel.game.id) != null) { + if (InstallManager(mContext).findInstallById(mListViewModel.game.id) != null) { if (mContext is Activity) { - val intent = RatingEditActivity.getIntent(mContext, mListViewModel.game.id!!, ratingData?.device, starCount) + val intent = RatingEditActivity.getIntent(mContext, mListViewModel.game, ratingData?.device, starCount) (mContext as Activity).startActivityForResult(intent, RatingFragment.RATING_EDIT_REQUEST) } -// } else { -// Utils.toast(mContext, "安装游戏后才能评论哦") -// } + } else { + Utils.toast(mContext, "安装游戏后才能评论哦") + } } } @@ -125,11 +122,15 @@ class RatingAdapter(context: Context, binding.run { vote.setOnClickListener { CheckLoginUtils.checkLogin(mContext) { - mListViewModel.voteComment(comment.id, callback = { - vote.text = (comment.vote + 1).toString() - vote.isChecked = true - MtaHelper.onEvent("游戏详情", "评论Tab_点赞", mListViewModel.game.name) - }) + if (!vote.isChecked) { + mListViewModel.voteComment(comment.id, callback = { + vote.text = (comment.vote + 1).toString() + vote.isChecked = true + MtaHelper.onEvent("游戏详情", "评论Tab_点赞", mListViewModel.game.name) + }) + } else { + Utils.toast(mContext, "已经点赞了哟~") + } } } commentItem.setOnClickListener { diff --git a/app/src/main/java/com/gh/gamecenter/gamedetail/rating/RatingFragment.kt b/app/src/main/java/com/gh/gamecenter/gamedetail/rating/RatingFragment.kt index 01ed681d73..462426d3fe 100644 --- a/app/src/main/java/com/gh/gamecenter/gamedetail/rating/RatingFragment.kt +++ b/app/src/main/java/com/gh/gamecenter/gamedetail/rating/RatingFragment.kt @@ -15,8 +15,12 @@ import com.gh.gamecenter.baselist.LoadStatus import com.gh.gamecenter.entity.GameEntity import com.gh.gamecenter.entity.RatingComment import com.gh.gamecenter.entity.Star +import com.gh.gamecenter.eventbus.EBReuse import com.gh.gamecenter.gamedetail.GameDetailFragment +import com.gh.gamecenter.personal.PersonalFragment.LOGIN_TAG import com.halo.assistant.HaloApp +import org.greenrobot.eventbus.Subscribe +import org.greenrobot.eventbus.ThreadMode class RatingFragment : ListFragment() { @@ -97,6 +101,12 @@ class RatingFragment : ListFragment() { } } + @Subscribe(threadMode = ThreadMode.MAIN) + fun onEventMainThread(changed: EBReuse) { + if (LOGIN_TAG == changed.type) { // 登入 + onLoadRefresh() + } + } companion object { @BindingAdapter("setRatingScore") 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 4e072033ce..32c162644a 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 @@ -13,6 +13,7 @@ import com.gh.common.util.EntranceUtils import com.gh.common.util.LoginUtils import com.gh.gamecenter.R import com.gh.gamecenter.databinding.ActivityRatingEditBinding +import com.gh.gamecenter.entity.GameEntity import com.gh.gamecenter.retrofit.Response import com.gh.gamecenter.retrofit.RetrofitManager import io.reactivex.android.schedulers.AndroidSchedulers @@ -27,9 +28,9 @@ class RatingEditActivity : BaseActivity() { private var mBinding: ActivityRatingEditBinding? = null - private var postDialog: WaitingDialogFragment? = null + private var mPostDialog: WaitingDialogFragment? = null - private var mGameId = "" + private var mGame: GameEntity? = null override fun getLayoutId(): Int { return R.layout.activity_rating_edit @@ -39,10 +40,11 @@ class RatingEditActivity : BaseActivity() { super.onCreate(savedInstanceState) setNavigationTitle("评论") setToolbarMenu(R.menu.menu_game_comment) - mGameId = intent.getStringExtra(EntranceUtils.KEY_GAMEID) + mGame = intent.getParcelableExtra(GameEntity.TAG) mBinding = ActivityRatingEditBinding.bind(mContentView) mBinding?.ratingScore?.rating = intent.getFloatExtra(EntranceUtils.KEY_RATING_STAR_COUNT, 1.0F) mBinding?.deviceName?.text = intent.getStringExtra(EntranceUtils.KEY_DEVICE_NAME) + mBinding?.content?.hint = "你觉得${mGame?.name}怎么样..." } override fun onMenuItemClick(item: MenuItem?): Boolean { @@ -53,19 +55,18 @@ class RatingEditActivity : BaseActivity() { } private fun postGameComment() { - val content = mBinding?.content?.text.toString() - if (TextUtils.isEmpty(content)) { - toast("请先评论") - return - } val rating = mBinding?.ratingScore?.rating if (rating == null || rating == 0F) { - toast("请评分再提交") + toast("请先给游戏打分") return } - - postDialog = WaitingDialogFragment.newInstance(getString(R.string.vote_post)) - postDialog?.show(supportFragmentManager, null) + val content = mBinding?.content?.text.toString() + if (TextUtils.isEmpty(content)) { + toast("请填写评论内容") + return + } + mPostDialog = WaitingDialogFragment.newInstance(getString(R.string.vote_post)) + mPostDialog?.show(supportFragmentManager, null) val jsonObject = JSONObject() jsonObject.put("star", rating) @@ -74,18 +75,19 @@ class RatingEditActivity : BaseActivity() { jsonObject.put("device", DeviceUtils.getLoginDevice(this)) val body = RequestBody.create(MediaType.parse("application/json"), jsonObject.toString()) - RetrofitManager.getInstance(this).api.postGameComment(mGameId, body) + RetrofitManager.getInstance(this).api.postGameComment(mGame?.id, body) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .subscribe(object : Response() { override fun onResponse(response: ResponseBody?) { - postDialog?.dismiss() + mPostDialog?.dismiss() setResult(Activity.RESULT_OK) + toast("提交成功") finish() } override fun onFailure(e: HttpException?) { - postDialog?.dismiss() + mPostDialog?.dismiss() var errorString: String? = null try { errorString = e?.response()?.errorBody()?.string() @@ -98,9 +100,9 @@ class RatingEditActivity : BaseActivity() { } companion object { - fun getIntent(context: Context, gameId: String, deviceName: String?, starCount: Float): Intent { + fun getIntent(context: Context, game: GameEntity, deviceName: String?, starCount: Float): Intent { val intent = Intent(context, RatingEditActivity::class.java) - intent.putExtra(EntranceUtils.KEY_GAMEID, gameId) + intent.putExtra(GameEntity.TAG, game) intent.putExtra(EntranceUtils.KEY_DEVICE_NAME, deviceName) intent.putExtra(EntranceUtils.KEY_RATING_STAR_COUNT, starCount) return intent diff --git a/app/src/main/java/com/gh/gamecenter/message/MessageItemViewHolder.java b/app/src/main/java/com/gh/gamecenter/message/MessageItemViewHolder.java index d1c114cf26..663b3117b7 100644 --- a/app/src/main/java/com/gh/gamecenter/message/MessageItemViewHolder.java +++ b/app/src/main/java/com/gh/gamecenter/message/MessageItemViewHolder.java @@ -175,7 +175,7 @@ public class MessageItemViewHolder extends BaseRecyclerViewHolder mBinding.messageArticleIcon.setVisibility(View.GONE); break; case "community_article_vote": - mBinding.messageCommand.setText("赞同了我的文章"); + mBinding.messageCommand.setText("赞同你的文章"); mBinding.messageContent.setVisibility(View.GONE); mBinding.messageOriginalTitle.setText(messageEntity.getArticle().getTitle()); mBinding.messageArticleIcon.setVisibility(View.GONE); @@ -192,7 +192,7 @@ public class MessageItemViewHolder extends BaseRecyclerViewHolder mBinding.messageContent.setMaxLines(Integer.MAX_VALUE); mBinding.messageContent.setText(messageEntity.getComment().getContent()); mBinding.messageOriginalTitle.setText(messageEntity.getArticle().getTitle()); - images = messageEntity.getAnswer().getImages(); + images = messageEntity.getArticle().getImages(); if (images.size() > 0) { targetUrl = images.get(0); } @@ -204,7 +204,7 @@ public class MessageItemViewHolder extends BaseRecyclerViewHolder mBinding.messageCommand.setText("赞了你的评论"); mBinding.messageContent.setVisibility(View.GONE); mBinding.messageOriginalTitle.setText(messageEntity.getArticle().getTitle()); - images = messageEntity.getAnswer().getImages(); + images = messageEntity.getArticle().getImages(); if (images.size() > 0) { targetUrl = images.get(0); } diff --git a/app/src/main/java/com/gh/gamecenter/qa/article/detail/ArticleDetailActivity.kt b/app/src/main/java/com/gh/gamecenter/qa/article/detail/ArticleDetailActivity.kt index 54d57a283f..c9f27ee06b 100644 --- a/app/src/main/java/com/gh/gamecenter/qa/article/detail/ArticleDetailActivity.kt +++ b/app/src/main/java/com/gh/gamecenter/qa/article/detail/ArticleDetailActivity.kt @@ -171,7 +171,8 @@ class ArticleDetailActivity : BaseActivity() { when (v.id) { R.id.article_detail_comment_count_container -> { val intent = CommentActivity.getArticleCommentIntent(this, mViewModel.articleId!! - , mViewModel.detailEntity?.count?.comment, "", false, mViewModel.community?.id!!) + , mViewModel.detailEntity?.count?.comment, "", false + , mViewModel.detailEntity?.community?.id!!) startActivityForResult(intent, CommentActivity.REQUEST_CODE) } R.id.article_detail_like_container -> { @@ -354,7 +355,7 @@ class ArticleDetailActivity : BaseActivity() { } mBinding.articleDetailTags.removeAllViews() - addTag(mViewModel.community?.name.toString()) + addTag(mViewModel.detailEntity?.community?.name.toString()) for (tag in mViewModel.detailEntity!!.tags) { addTag(tag) } diff --git a/app/src/main/java/com/gh/gamecenter/qa/article/detail/ArticleDetailViewModel.kt b/app/src/main/java/com/gh/gamecenter/qa/article/detail/ArticleDetailViewModel.kt index 9e0f4d9443..8aeabb55de 100644 --- a/app/src/main/java/com/gh/gamecenter/qa/article/detail/ArticleDetailViewModel.kt +++ b/app/src/main/java/com/gh/gamecenter/qa/article/detail/ArticleDetailViewModel.kt @@ -25,13 +25,12 @@ class ArticleDetailViewModel(application: Application) : AndroidViewModel(applic val articleLiveData = MutableLiveData>() private val mFollowLiveData = MutableLiveData() + private var community: CommunityEntity? = null // 社区名称可能为空 val followLiveData: LiveData get() = mFollowLiveData var articleId: String? = null - var community: CommunityEntity? = null - fun initData(community: CommunityEntity, articleId: String) { this.articleId = articleId @@ -44,7 +43,6 @@ class ArticleDetailViewModel(application: Application) : AndroidViewModel(applic .subscribeOn(Schedulers.io()) .subscribe(object : Response() { override fun onResponse(response: ArticleDetailEntity?) { - response?.community = community!! detailEntity = response articleLiveData.postValue(Resource.success(response)) } diff --git a/app/src/main/java/com/gh/gamecenter/qa/article/draft/ArticleDraftFragment.kt b/app/src/main/java/com/gh/gamecenter/qa/article/draft/ArticleDraftFragment.kt index 305c00680c..9b61741def 100644 --- a/app/src/main/java/com/gh/gamecenter/qa/article/draft/ArticleDraftFragment.kt +++ b/app/src/main/java/com/gh/gamecenter/qa/article/draft/ArticleDraftFragment.kt @@ -27,7 +27,7 @@ class ArticleDraftFragment : ListFragment(2) - val filter = InputFilter { source, start, end, dest, dstart, dend -> - if (source.toString().contentEquals("\n")) { + val filter = InputFilter { source, _, _, _, _, _ -> + if (source.toString().contentEquals("\n") || source.toString().contentEquals(" ")) { "" } else { null diff --git a/app/src/main/java/com/gh/gamecenter/qa/myqa/MyDraftAdapter.java b/app/src/main/java/com/gh/gamecenter/qa/myqa/MyDraftAdapter.java index 6e2fcf29d1..78c4fb2caf 100644 --- a/app/src/main/java/com/gh/gamecenter/qa/myqa/MyDraftAdapter.java +++ b/app/src/main/java/com/gh/gamecenter/qa/myqa/MyDraftAdapter.java @@ -109,7 +109,7 @@ class MyDraftAdapter extends ListAdapter { mContext.startActivity(QuestionsDetailActivity.getIntent(mContext, questions.getId(), mEntrance, "我的问答-我的草稿")); }); binding.answerDraftItemDelete.setOnClickListener(v -> { - DialogUtils.showAlertDialog(mContext, "删除草稿", "答案尚未发布,确定删除?" + DialogUtils.showAlertDialog(mContext, "警告", "确定要删除回答草稿吗?删除之后不可恢复" , "确定", "取消" , () -> deleteAnswerDraft(answerEntity), null); }); diff --git a/app/src/main/java/com/gh/gamecenter/qa/questions/detail/AnswerViewHolder.java b/app/src/main/java/com/gh/gamecenter/qa/questions/detail/AnswerViewHolder.java index e291c16b43..b9a0673288 100644 --- a/app/src/main/java/com/gh/gamecenter/qa/questions/detail/AnswerViewHolder.java +++ b/app/src/main/java/com/gh/gamecenter/qa/questions/detail/AnswerViewHolder.java @@ -102,6 +102,7 @@ public class AnswerViewHolder extends BaseRecyclerViewHolder { mQuestionTitle.setVisibility(View.VISIBLE); mQuestionTitle.setText(entity.getQuestions().getTitle()); mVotecount.setText(mVotecount.getContext().getString(R.string.ask_vote_count, NumberUtils.transSimpleCount(entity.getVote()))); + mCommentCount.setText(String.format("%s 评论", NumberUtils.transSimpleCount(entity.getCommentCount()))); mCommunityName.setVisibility(View.VISIBLE); mCommunityName.setText(entity.getCommunityName()); UserEntity user = entity.getUser(); diff --git a/app/src/main/res/drawable-xhdpi/menu_more_report.png b/app/src/main/res/drawable-xhdpi/menu_more_report.png index e2e21d9e4a75cd52470691eea1ad814d62381a85..0c01e8de7ded94875c7abd844f5516e6a42ce34f 100644 GIT binary patch delta 958 zcmcb|Glh4950iq6g{iTzg_E<3i6IcUT3A?`7`wTe8ai5u(?j=>%OYfK7w^_Gd|Lk6K&->ON9v-aT`Mkz*r~NtG+^JqiKP`?e*w=CV zvDV}IUk61bSZg0}y?C;H{sRe_hV2Q$HG!g2&ZgaM{d-uiiN&LdLqkJP7V?TN6FOnvrWs+~2BsZ|MIqYlvSwClazv{0$sXV%gNe8U$)Ghqa z&DwC|+>7i(g3g{ZJU(V$V9jfIEB1!%_LsXyBOFB&vlocpVfw9mXVo{!#nTP5xev>! zh24)`CwJF}SLp5;UE^n4{w!R(>$CHe8_W527Pav_yTWeQZhCxcG50Q&P3^qf-kgbO z`hBJ8q04&(HSVOw`i;VQ^{JCieZKa8yG^qCdCtT4Z=6?7IeWM``bb|u_uP$|cExgB zr%y($I^;4n;J^{>N{ux~7A1s;T|3ToAp7=WvFI5qmUr0+ge?(^j#wVzUzw?XwaGZ) z=M|T_@db28FXZldr$cJMgkTJSj`5Y(`X0 z;_RAZQUx`$XGHm2Q<`o&|KpF;fNdtHU2a}!yqtbvXY7*5c2{26`|4_9sc*JK-&EFH z?EZkW+dQ_~qh#$|!~PWy_ZWorX-+$?+002;>|M>?fHSyeC`GhyDNZe?~X z;`O=PJ8w@kIeqKDszk=a6#0Z6=lWx7s%x!TCqH1nVR&Lr*0M5*~@1C@?omtt%emEwQDXs_s|X0O6~XfXlv$pWN&`A^h23` zfvL%9eaYKiB)8f5&%P)xto>~2l^xNltkVu3mFnHSA;jqX_C50iqUv5T9jshhEjv5A|Zp{s?HtD&j0xvP_fqlKxVfuqsn93~l&%S(`IiF(jz3mmZdw-Y zw&3ld^$VSJ8gBE22A)1J!K)$ShSrJXXVsUkU-M4+ezY(7_mcisTHo$o|9;PUe|1~#?U^P~_jVfi8lNcsn;^qe z-(b&t6YCH zz4$Gg@tlQMQgV1g4zhokGBcx`PvXoQ6AR9?gRAtCD|;{3E?{CiP#eH)82g0v+6k2% z?0QYn59Z%@uI5b@+{0-7AjTtbZP?=VvcL4$MC-$zNT0Hq`TEeJ*^A$s+84$-@08!e z;Jx6^(XIzSrbR4%(65&)>i4dQ=jp055u$ekPQ7}~T>eOFNkp&EYW~o~GyXGT?2{}z zZmXn;J}Qbkq}SXpyT;DiAvgPMRIll$Nz*q-bEbNqz2!66U`fEf+H_07$wr;EY*B1i zdVCww6Wf*Q7r7<`AKsyL=1IF*=H?YgMa!6Kyc##0f3QRAjY7r}hZ}0&%hqjRGOzHw zoqs{NWU<8R)TwU^6j`gPW|)RYG=J8~v}W12`p})L6E^I;s<=Aj?n1t~QcHx3U$0d5 ziCXho(1LIM2@~F|h{D!~#UFU<@0HHjdSN&BtRr>)y1q{zaYom#S>lsq|LxW{oz3rO z_f+>KN_h9|eWRK){p^bpr<=Pv6YqSz{dxVSWwt$qm%P`oxm+!cy~Lyb$cbl{m_+ur zx%+~C?dHyLOPzYQ-1Caf@1BR(<`u2q+&w>mWzQ4yFJ(s-iM_0E*~m0EHs@pRlf%EH zrYH%7ELzVjb4Yi;bm?;2`h&TqaxEd1Ucz4_v=+-a&wW(0>b2a7?Jswn<6rZomj6Je z>jSHDmfL%_Pv70LSfoVmPr}DNr#4OL^qLX;eBR_bwkfVf)19g+@0+!*3*IrMxpzTw h-jc5cKlU>)Gb}o~z9yANpo#$qJYD@<);T3K0RXeEj`9Ei diff --git a/app/src/main/res/layout/activity_rating_edit.xml b/app/src/main/res/layout/activity_rating_edit.xml index a3e0f0d588..c9ef4cd4dd 100644 --- a/app/src/main/res/layout/activity_rating_edit.xml +++ b/app/src/main/res/layout/activity_rating_edit.xml @@ -69,6 +69,7 @@ android:id = "@+id/device_box" android:layout_width = "wrap_content" android:layout_height = "wrap_content" + android:checked="true" android:button = "@drawable/rating_checkbox_style" /> diff --git a/app/src/main/res/layout/ask_recommends_subject.xml b/app/src/main/res/layout/ask_recommends_subject.xml index 657fcf54aa..f951a89ecb 100644 --- a/app/src/main/res/layout/ask_recommends_subject.xml +++ b/app/src/main/res/layout/ask_recommends_subject.xml @@ -11,12 +11,12 @@ android:id = "@+id/ask_recommends_subject_vp" android:layout_width = "match_parent" android:layout_height = "128dp" + android:layout_marginBottom = "10dp" android:layout_marginLeft = "20dp" android:layout_marginRight = "20dp" android:clipChildren = "false" android:overScrollMode = "never" - android:visibility = "visible" - android:layout_marginBottom="10dp"/> + android:visibility = "visible" /> diff --git a/app/src/main/res/layout/layout_menu_game_comment.xml b/app/src/main/res/layout/layout_menu_game_comment.xml index eb0d4a6d09..87a982a714 100644 --- a/app/src/main/res/layout/layout_menu_game_comment.xml +++ b/app/src/main/res/layout/layout_menu_game_comment.xml @@ -10,7 +10,7 @@ android:layout_centerInParent = "true" android:gravity = "center" android:paddingRight = "20dp" - android:text = "发表" + android:text = "提交" android:textColor = "@color/theme" android:textSize = "13sp" /> diff --git a/app/src/main/res/layout/rating_comment_item.xml b/app/src/main/res/layout/rating_comment_item.xml index 3815079595..dac3e1193b 100644 --- a/app/src/main/res/layout/rating_comment_item.xml +++ b/app/src/main/res/layout/rating_comment_item.xml @@ -17,11 +17,10 @@ xmlns:fresco = "http://schemas.android.com/tools" xmlns:tools = "http://schemas.android.com/tools" android:id = "@+id/comment_item" - visibleGone = "@{data != null}" android:layout_width = "match_parent" android:layout_height = "wrap_content" android:background = "@android:color/white" - android:paddingBottom = "12dp" + android:paddingBottom = "11dp" android:paddingLeft = "20dp" android:paddingRight = "10dp" > @@ -37,7 +36,7 @@ android:layout_width = "35dp" android:layout_height = "35dp" android:layout_marginTop = "12dp" - app:layout_constraintTop_toBottomOf = "@id/line" > + app:layout_constraintTop_toBottomOf = "@+id/line" > - + app:layout_constraintLeft_toRightOf = "@+id/user_icon_container" + app:layout_constraintRight_toLeftOf = "@+id/vote" + app:layout_constraintTop_toTopOf = "@+id/user_icon_container" > - + + + + @@ -116,9 +127,9 @@ android:text = "@{data.vote > 0? data.vote + ``: ``}" android:textColor = "@color/vote_selector" android:textSize = "13sp" - app:layout_constraintBottom_toBottomOf = "@id/user_icon_container" + app:layout_constraintBottom_toBottomOf = "@+id/user_icon_container" app:layout_constraintRight_toRightOf = "parent" - app:layout_constraintTop_toTopOf = "@id/user_icon_container" + app:layout_constraintTop_toTopOf = "@+id/user_icon_container" tools:text = "1" /> + app:layout_constraintTop_toBottomOf = "@+id/content" /> diff --git a/app/src/main/res/layout/rating_item.xml b/app/src/main/res/layout/rating_item.xml index 3f4dcc42c4..01c3312747 100644 --- a/app/src/main/res/layout/rating_item.xml +++ b/app/src/main/res/layout/rating_item.xml @@ -235,61 +235,62 @@ - - - - - - - - - - + visibleGone="@{!data.me.commented}" + android:orientation = "vertical" > - + + + + + + + + + + + +