diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 321952e..4d0853e 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -32,7 +32,6 @@ android:theme="@style/QMUI.Compat.NoActionBar" android:usesCleartextTraffic="true"> - diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 321952e..4d0853e 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -32,7 +32,6 @@ android:theme="@style/QMUI.Compat.NoActionBar" android:usesCleartextTraffic="true"> - diff --git a/app/src/main/java/com/casic/qd/smartwell/utils/Constant.kt b/app/src/main/java/com/casic/qd/smartwell/utils/Constant.kt index 4c941f0..d715bdd 100644 --- a/app/src/main/java/com/casic/qd/smartwell/utils/Constant.kt +++ b/app/src/main/java/com/casic/qd/smartwell/utils/Constant.kt @@ -44,7 +44,6 @@ const val PASSWORD = "password" const val USER_DETAIL_MODEL = "userDetailModel" const val USER_DEVICE_TYPE = "userDeviceType" - const val CANCEL_ALARM_ACTION = "cancelAlarm" const val AREA_ID = "110000" const val BANNER_MODEL = "bannerModel" diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 321952e..4d0853e 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -32,7 +32,6 @@ android:theme="@style/QMUI.Compat.NoActionBar" android:usesCleartextTraffic="true"> - diff --git a/app/src/main/java/com/casic/qd/smartwell/utils/Constant.kt b/app/src/main/java/com/casic/qd/smartwell/utils/Constant.kt index 4c941f0..d715bdd 100644 --- a/app/src/main/java/com/casic/qd/smartwell/utils/Constant.kt +++ b/app/src/main/java/com/casic/qd/smartwell/utils/Constant.kt @@ -44,7 +44,6 @@ const val PASSWORD = "password" const val USER_DETAIL_MODEL = "userDetailModel" const val USER_DEVICE_TYPE = "userDeviceType" - const val CANCEL_ALARM_ACTION = "cancelAlarm" const val AREA_ID = "110000" const val BANNER_MODEL = "bannerModel" diff --git a/app/src/main/java/com/casic/qd/smartwell/view/AlarmManagementActivity.kt b/app/src/main/java/com/casic/qd/smartwell/view/AlarmManagementActivity.kt index f77636c..4d85b27 100644 --- a/app/src/main/java/com/casic/qd/smartwell/view/AlarmManagementActivity.kt +++ b/app/src/main/java/com/casic/qd/smartwell/view/AlarmManagementActivity.kt @@ -1,8 +1,5 @@ package com.casic.qd.smartwell.view -import android.content.BroadcastReceiver -import android.content.Context -import android.content.Intent import android.os.Handler import androidx.lifecycle.ViewModelProvider import androidx.recyclerview.widget.LinearLayoutManager @@ -29,6 +26,7 @@ private var pageIndex = 1 private var isRefresh = false private var isLoadMore = false + private var clickedPosition = 0 override fun initLayoutView(): Int = R.layout.activity_alarm_management @@ -42,20 +40,12 @@ override fun initData() { weakReferenceHandler = WeakReferenceHandler(callback) - alarmViewModel = ViewModelProvider(this).get(AlarmViewModel::class.java) + } + + override fun onResume() { obtainAlarmListByPage() - //注册广播接收者 - BroadcastReceiverManager.instance.addAction( - Constant.CANCEL_ALARM_ACTION, - object : BroadcastReceiver() { - override fun onReceive(context: Context?, intent: Intent?) { - //收到广播相当于做了一次列表刷新 - isRefresh = true - pageIndex = 1 - obtainAlarmListByPage() - } - }) + super.onResume() } override fun initEvent() { @@ -105,9 +95,8 @@ is LoadState.Success -> { DialogHelper.dismissLoadingDialog() //刷新列表 - BroadcastReceiverManager.instance.sendBroadcast( - Constant.CANCEL_ALARM_ACTION, "" - ) + alarmListAdapter.notifyItemRemoved(clickedPosition) + dataBeans.removeAt(clickedPosition) } else -> { DialogHelper.dismissLoadingDialog() @@ -147,6 +136,8 @@ } override fun onOperationClicked(position: Int) { + //标记被点击的item位置 + clickedPosition = position AlertControlDialog.Builder() .setContext(this@AlarmManagementActivity) .setTitle("确认操作") @@ -175,10 +166,4 @@ } true } - - override fun onDestroy() { - super.onDestroy() - //解注册广播接收者,防止内存泄漏 - BroadcastReceiverManager.instance.destroy(Constant.CANCEL_ALARM_ACTION) - } } \ No newline at end of file diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 321952e..4d0853e 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -32,7 +32,6 @@ android:theme="@style/QMUI.Compat.NoActionBar" android:usesCleartextTraffic="true"> - diff --git a/app/src/main/java/com/casic/qd/smartwell/utils/Constant.kt b/app/src/main/java/com/casic/qd/smartwell/utils/Constant.kt index 4c941f0..d715bdd 100644 --- a/app/src/main/java/com/casic/qd/smartwell/utils/Constant.kt +++ b/app/src/main/java/com/casic/qd/smartwell/utils/Constant.kt @@ -44,7 +44,6 @@ const val PASSWORD = "password" const val USER_DETAIL_MODEL = "userDetailModel" const val USER_DEVICE_TYPE = "userDeviceType" - const val CANCEL_ALARM_ACTION = "cancelAlarm" const val AREA_ID = "110000" const val BANNER_MODEL = "bannerModel" diff --git a/app/src/main/java/com/casic/qd/smartwell/view/AlarmManagementActivity.kt b/app/src/main/java/com/casic/qd/smartwell/view/AlarmManagementActivity.kt index f77636c..4d85b27 100644 --- a/app/src/main/java/com/casic/qd/smartwell/view/AlarmManagementActivity.kt +++ b/app/src/main/java/com/casic/qd/smartwell/view/AlarmManagementActivity.kt @@ -1,8 +1,5 @@ package com.casic.qd.smartwell.view -import android.content.BroadcastReceiver -import android.content.Context -import android.content.Intent import android.os.Handler import androidx.lifecycle.ViewModelProvider import androidx.recyclerview.widget.LinearLayoutManager @@ -29,6 +26,7 @@ private var pageIndex = 1 private var isRefresh = false private var isLoadMore = false + private var clickedPosition = 0 override fun initLayoutView(): Int = R.layout.activity_alarm_management @@ -42,20 +40,12 @@ override fun initData() { weakReferenceHandler = WeakReferenceHandler(callback) - alarmViewModel = ViewModelProvider(this).get(AlarmViewModel::class.java) + } + + override fun onResume() { obtainAlarmListByPage() - //注册广播接收者 - BroadcastReceiverManager.instance.addAction( - Constant.CANCEL_ALARM_ACTION, - object : BroadcastReceiver() { - override fun onReceive(context: Context?, intent: Intent?) { - //收到广播相当于做了一次列表刷新 - isRefresh = true - pageIndex = 1 - obtainAlarmListByPage() - } - }) + super.onResume() } override fun initEvent() { @@ -105,9 +95,8 @@ is LoadState.Success -> { DialogHelper.dismissLoadingDialog() //刷新列表 - BroadcastReceiverManager.instance.sendBroadcast( - Constant.CANCEL_ALARM_ACTION, "" - ) + alarmListAdapter.notifyItemRemoved(clickedPosition) + dataBeans.removeAt(clickedPosition) } else -> { DialogHelper.dismissLoadingDialog() @@ -147,6 +136,8 @@ } override fun onOperationClicked(position: Int) { + //标记被点击的item位置 + clickedPosition = position AlertControlDialog.Builder() .setContext(this@AlarmManagementActivity) .setTitle("确认操作") @@ -175,10 +166,4 @@ } true } - - override fun onDestroy() { - super.onDestroy() - //解注册广播接收者,防止内存泄漏 - BroadcastReceiverManager.instance.destroy(Constant.CANCEL_ALARM_ACTION) - } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/qd/smartwell/view/AlarmSearchResultActivity.kt b/app/src/main/java/com/casic/qd/smartwell/view/AlarmSearchResultActivity.kt index b534b25..0b45f41 100644 --- a/app/src/main/java/com/casic/qd/smartwell/view/AlarmSearchResultActivity.kt +++ b/app/src/main/java/com/casic/qd/smartwell/view/AlarmSearchResultActivity.kt @@ -1,8 +1,5 @@ package com.casic.qd.smartwell.view -import android.content.BroadcastReceiver -import android.content.Context -import android.content.Intent import android.os.Handler import androidx.lifecycle.ViewModelProvider import androidx.recyclerview.widget.LinearLayoutManager @@ -32,6 +29,7 @@ private var pageIndex = 1 private var isRefresh = false private var isLoadMore = false + private var clickedPosition = 0 override fun initLayoutView(): Int = R.layout.activity_alarm_search_result @@ -47,21 +45,21 @@ alarmViewModel = ViewModelProvider(this).get(AlarmViewModel::class.java) obtainSearchResult() - - //注册广播接收者 - BroadcastReceiverManager.instance.addAction( - Constant.CANCEL_ALARM_ACTION, - object : BroadcastReceiver() { - override fun onReceive(context: Context?, intent: Intent?) { - //收到广播相当于做了一次列表刷新 - isRefresh = true - pageIndex = 1 - obtainSearchResult() - } - }) } override fun initEvent() { + resultRefreshLayout.setOnRefreshListener { + isRefresh = true + //刷新之后页码重置 + pageIndex = 1 + obtainSearchResult() + } + resultRefreshLayout.setOnLoadMoreListener { + isLoadMore = true + pageIndex++ + obtainSearchResult() + } + searchAlarmViewModel.alarmResultModel.observe(this, { if (it.code == 200) { val dataRows = it.data?.rows @@ -99,18 +97,6 @@ } }) - resultRefreshLayout.setOnRefreshListener { - isRefresh = true - //刷新之后页码重置 - pageIndex = 1 - obtainSearchResult() - } - resultRefreshLayout.setOnLoadMoreListener { - isLoadMore = true - pageIndex++ - obtainSearchResult() - } - //消警状态处理 alarmViewModel.loadState.observe(this, { when (it) { @@ -120,9 +106,8 @@ is LoadState.Success -> { DialogHelper.dismissLoadingDialog() //刷新列表 - BroadcastReceiverManager.instance.sendBroadcast( - Constant.CANCEL_ALARM_ACTION, "" - ) + alarmListAdapter.notifyItemRemoved(clickedPosition) + dataBeans.removeAt(clickedPosition) } else -> { DialogHelper.dismissLoadingDialog() @@ -171,6 +156,8 @@ } override fun onOperationClicked(position: Int) { + //标记被点击的item位置 + clickedPosition = position AlertControlDialog.Builder() .setContext(this@AlarmSearchResultActivity) .setTitle("确认操作") @@ -199,10 +186,4 @@ } true } - - override fun onDestroy() { - super.onDestroy() - //解注册广播接收者,防止内存泄漏 - BroadcastReceiverManager.instance.destroy(Constant.CANCEL_ALARM_ACTION) - } } \ No newline at end of file