diff --git a/app/src/main/java/com/huanchengfly/tieba/post/activities/ThreadActivity.kt b/app/src/main/java/com/huanchengfly/tieba/post/activities/ThreadActivity.kt index d1719077..5f34776d 100644 --- a/app/src/main/java/com/huanchengfly/tieba/post/activities/ThreadActivity.kt +++ b/app/src/main/java/com/huanchengfly/tieba/post/activities/ThreadActivity.kt @@ -95,6 +95,10 @@ class ThreadActivity : BaseActivity(), View.OnClickListener, IThreadMenuFragment private var collect = false private var agree = false + set(value) { + field = value + invalidateAgreeStatus() + } private var agreeNum = 0 private var page = 0 private var totalPage = 0 @@ -695,38 +699,32 @@ class ThreadActivity : BaseActivity(), View.OnClickListener, IThreadMenuFragment if (!agree) { agree = true agreeNum += 1 - invalidateAgreeStatus() TiebaApi.getInstance().agree(dataBean!!.thread?.threadInfo?.threadId!!, dataBean!!.thread?.threadInfo?.firstPostId!!).enqueue(object : Callback { override fun onFailure(call: Call, t: Throwable) { agree = false agreeNum -= 1 Toast.makeText(this@ThreadActivity, getString(R.string.toast_agree_failed, t.message), Toast.LENGTH_SHORT).show() - invalidateAgreeStatus() } override fun onResponse(call: Call, response: Response) { if (!agree) { agree = true - invalidateAgreeStatus() } } }) } else { agree = false agreeNum -= 1 - invalidateAgreeStatus() TiebaApi.getInstance().disagree(dataBean!!.thread?.threadInfo?.threadId!!, dataBean!!.thread?.threadInfo?.firstPostId!!).enqueue(object : Callback { override fun onFailure(call: Call, t: Throwable) { agree = true agreeNum += 1 - invalidateAgreeStatus() Toast.makeText(this@ThreadActivity, getString(R.string.toast_unagree_failed, t.message), Toast.LENGTH_SHORT).show() } override fun onResponse(call: Call, response: Response) { if (agree) { agree = false - invalidateAgreeStatus() } } })