diff --git a/app/src/main/java/com/casic/detector/view/MainActivity.kt b/app/src/main/java/com/casic/detector/view/MainActivity.kt index f6d7d39..50ed07a 100644 --- a/app/src/main/java/com/casic/detector/view/MainActivity.kt +++ b/app/src/main/java/com/casic/detector/view/MainActivity.kt @@ -17,7 +17,11 @@ import com.amap.api.maps.AMapOptions import com.amap.api.maps.CameraUpdateFactory import com.amap.api.maps.CoordinateConverter -import com.amap.api.maps.model.* +import com.amap.api.maps.model.BitmapDescriptorFactory +import com.amap.api.maps.model.LatLng +import com.amap.api.maps.model.LatLngBounds +import com.amap.api.maps.model.MarkerOptions +import com.amap.api.maps.model.MyLocationStyle import com.casic.detector.R import com.casic.detector.bean.LabelBean import com.casic.detector.bean.TaskBean @@ -29,7 +33,13 @@ import com.casic.detector.extensions.drawCircle import com.casic.detector.extensions.initLayoutImmersionBar import com.casic.detector.model.TaskModel -import com.casic.detector.utils.* +import com.casic.detector.utils.DataBaseManager +import com.casic.detector.utils.ExcelHub +import com.casic.detector.utils.FileType +import com.casic.detector.utils.LoadingDialogHub +import com.casic.detector.utils.LocaleConstant +import com.casic.detector.utils.LocationHub +import com.casic.detector.utils.RouteOnMap import com.casic.detector.vm.TaskViewModel import com.casic.detector.widgets.QueryMarkerDialog import com.casic.detector.widgets.SamplePopupWindow @@ -38,14 +48,28 @@ import com.gyf.immersionbar.ImmersionBar import com.pengxh.kt.lite.base.KotlinBaseActivity import com.pengxh.kt.lite.callback.OnDownloadListener -import com.pengxh.kt.lite.extensions.* +import com.pengxh.kt.lite.extensions.createDownloadFileDir +import com.pengxh.kt.lite.extensions.downloadFile +import com.pengxh.kt.lite.extensions.dp2px +import com.pengxh.kt.lite.extensions.isNetworkConnected +import com.pengxh.kt.lite.extensions.navigatePageTo +import com.pengxh.kt.lite.extensions.show +import com.pengxh.kt.lite.extensions.toJson import com.pengxh.kt.lite.utils.SaveKeyValues import com.pengxh.kt.lite.vm.LoadState import com.pengxh.kt.lite.widget.dialog.AlertControlDialog import com.pengxh.kt.lite.widget.dialog.AlertMessageDialog import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import com.pengxh.kt.lite.widget.dialog.NoNetworkDialog -import kotlinx.android.synthetic.main.activity_main.* +import kotlinx.android.synthetic.main.activity_main.aimButton +import kotlinx.android.synthetic.main.activity_main.currentLocationView +import kotlinx.android.synthetic.main.activity_main.detectionButton +import kotlinx.android.synthetic.main.activity_main.inspectionButton +import kotlinx.android.synthetic.main.activity_main.installButton +import kotlinx.android.synthetic.main.activity_main.mapView +import kotlinx.android.synthetic.main.activity_main.rightImageView +import kotlinx.android.synthetic.main.activity_main.rootView +import kotlinx.android.synthetic.main.activity_main.viewButton import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.launch @@ -392,13 +416,16 @@ private fun showLabelsOnMap() { clusterOverlay?.onDestroy() val clusterItems = ArrayList() - labelBeans.forEach { - val latitude = it.lat.toDouble() - val longitude = it.lng.toDouble() - val latLng = LatLng(latitude, longitude, false) - val regionItem = RegionItem(latLng, it.id.toString()) - clusterItems.add(regionItem) + labelBeans.forEach { + if (it.lat.isNotEmpty() && it.lng.isNotEmpty()) { + val latitude = it.lat.toDouble() + val longitude = it.lng.toDouble() + + val latLng = LatLng(latitude, longitude, false) + val regionItem = RegionItem(latLng, it.id.toString()) + clusterItems.add(regionItem) + } } clusterOverlay = ClusterOverlay(context, aMap, clusterItems, regionRadius)