[2.13.2]优化MarkerManager代码逻辑
This commit is contained in:
@@ -56,7 +56,7 @@ object MarkerManager {
|
||||
|
||||
private const val TAG = "MarkerManager"
|
||||
|
||||
private val markers by lazy { LinkedList<MarkerWrapper>() }
|
||||
private val showedMarkers by lazy { LinkedList<MarkerWrapper>() }
|
||||
|
||||
private val toRemoveMakers by lazy { LinkedList<MarkerWrapper>() }
|
||||
|
||||
@@ -113,7 +113,7 @@ object MarkerManager {
|
||||
}
|
||||
Log.d(TAG, "--- checkTask --- 5 ---:delta:$delta, elapsed:${elapsed}")
|
||||
if (elapsed >= 300) {
|
||||
var removeMarkerError = marker.markers == null || marker.markers?.isEmpty() == true
|
||||
var removeMarkerError = false
|
||||
marker.markers?.forEach {
|
||||
try {
|
||||
it.setVisible(false)
|
||||
@@ -124,7 +124,7 @@ object MarkerManager {
|
||||
Log.e(TAG, "--- checkTask --- remove marker error:${t.message}")
|
||||
}
|
||||
}
|
||||
var removeLineError = marker.lines == null || marker.lines?.isEmpty() == true
|
||||
var removeLineError = false
|
||||
marker.lines?.forEach {
|
||||
try {
|
||||
it.isVisible = false
|
||||
@@ -146,7 +146,7 @@ object MarkerManager {
|
||||
}
|
||||
}
|
||||
}
|
||||
val iterator = markers.iterator()
|
||||
val iterator = showedMarkers.iterator()
|
||||
while (iterator.hasNext()) {
|
||||
val marker = iterator.next()
|
||||
if (carLoc.get() == null) {
|
||||
@@ -186,8 +186,8 @@ object MarkerManager {
|
||||
|
||||
|
||||
fun addMarker(marker: MarkerWrapper) {
|
||||
synchronized(markers) {
|
||||
markers.offer(marker)
|
||||
synchronized(showedMarkers) {
|
||||
showedMarkers.offer(marker)
|
||||
}
|
||||
if (isFirstAdd.compareAndSet(false,true)) {
|
||||
handler.postDelayed(checkTask, 1000)
|
||||
|
||||
Reference in New Issue
Block a user