diff --git a/app/src/main/java/com/casic/br/ktd/fragment/AlarmPageFragment.kt b/app/src/main/java/com/casic/br/ktd/fragment/AlarmPageFragment.kt index 49a74eb..4f5e70e 100644 --- a/app/src/main/java/com/casic/br/ktd/fragment/AlarmPageFragment.kt +++ b/app/src/main/java/com/casic/br/ktd/fragment/AlarmPageFragment.kt @@ -48,6 +48,7 @@ weakReferenceHandler = WeakReferenceHandler(this) alarmViewModel = ViewModelProvider(this)[AlarmViewModel::class.java] + getAlarmsByPage(true) alarmViewModel.alarmList.observe(this) { if (it.code == 200) { val dataRows = it.data?.rows!! @@ -146,11 +147,6 @@ } } - override fun onResume() { - super.onResume() - getAlarmsByPage(true) - } - private fun getAlarmsByPage(isRefresh: Boolean) { if (isRefresh) { page = 1 diff --git a/app/src/main/java/com/casic/br/ktd/fragment/AlarmPageFragment.kt b/app/src/main/java/com/casic/br/ktd/fragment/AlarmPageFragment.kt index 49a74eb..4f5e70e 100644 --- a/app/src/main/java/com/casic/br/ktd/fragment/AlarmPageFragment.kt +++ b/app/src/main/java/com/casic/br/ktd/fragment/AlarmPageFragment.kt @@ -48,6 +48,7 @@ weakReferenceHandler = WeakReferenceHandler(this) alarmViewModel = ViewModelProvider(this)[AlarmViewModel::class.java] + getAlarmsByPage(true) alarmViewModel.alarmList.observe(this) { if (it.code == 200) { val dataRows = it.data?.rows!! @@ -146,11 +147,6 @@ } } - override fun onResume() { - super.onResume() - getAlarmsByPage(true) - } - private fun getAlarmsByPage(isRefresh: Boolean) { if (isRefresh) { page = 1 diff --git a/app/src/main/java/com/casic/br/ktd/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/ktd/fragment/HomePageFragment.kt index bcc4ade..46bf4eb 100644 --- a/app/src/main/java/com/casic/br/ktd/fragment/HomePageFragment.kt +++ b/app/src/main/java/com/casic/br/ktd/fragment/HomePageFragment.kt @@ -9,6 +9,7 @@ import android.widget.ImageView import android.widget.TextView import androidx.lifecycle.ViewModelProvider +import androidx.lifecycle.lifecycleScope import com.amap.api.maps.AMap import com.amap.api.maps.AMapOptions import com.amap.api.maps.CameraUpdateFactory @@ -38,6 +39,8 @@ import com.pengxh.kt.lite.extensions.toJson import com.pengxh.kt.lite.utils.SaveKeyValues import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.launch import org.json.JSONObject import java.text.DecimalFormat @@ -206,18 +209,22 @@ //瞄点画线 val latLngPoints = ArrayList() - it.data.forEach { task -> - if (task.lagitude.isNotEmpty() && task.longitude.isNotEmpty()) { - if (CoordinateConverter.isAMapDataAvailable( - task.lagitude.toDouble(), task.longitude.toDouble() - ) - ) { - latLngPoints.add( - LatLng(task.lagitude.toDouble(), task.longitude.toDouble()) - ) - aMap.addPolyline( - PolylineOptions().addAll(latLngPoints).width(10f).color(Color.RED) - ) + //点太多,必须采用协程(线程也行) + lifecycleScope.launch(Dispatchers.IO) { + it.data.forEach { task -> + if (task.lagitude.isNotEmpty() && task.longitude.isNotEmpty()) { + if (CoordinateConverter.isAMapDataAvailable( + task.lagitude.toDouble(), task.longitude.toDouble() + ) + ) { + latLngPoints.add( + LatLng(task.lagitude.toDouble(), task.longitude.toDouble()) + ) + aMap.addPolyline( + PolylineOptions() + .addAll(latLngPoints).width(10f).color(Color.RED) + ) + } } } }