Как использовать два Listener'a одновременно? В Yandex MapKit

Проблема в том, что не получается нажимать на маркеры и значки перестают поялвляться, когда использую оба listener. Вот код:

private fun startListeners(map: Map) {
        map.addCameraListener { _, _, _, _ ->
            Log.d("@@camera", "Camera moved")
            val currentTime = System.currentTimeMillis()
            val elapsedTime = currentTime - lastSetPlacesTime
            val currentCoordinates = Pair(
                map.cameraPosition.target.longitude,
                map.cameraPosition.target.latitude
            )

            // Проверяем, прошло ли достаточно времени с момента последнего вызова setPlaces
            // и изменились ли координаты карты
            if (elapsedTime >= 1000 && lastMapCoordinates != currentCoordinates) {
                lastSetPlacesTime = currentTime
                lastMapCoordinates = currentCoordinates

                lifecycleScope.launch {
                    withContext(Dispatchers.Main) {
                        if (isZoomed) {
                            viewModel.attraction = viewModel.getAttractions(
                                map.cameraPosition.target.longitude - 0.005,
                                map.cameraPosition.target.latitude - 0.005,
                                map.cameraPosition.target.longitude + 0.005,
                                map.cameraPosition.target.latitude + 0.005
                            )
                            setPlaces(
                                map
                            )


                        }
                    }
                }
            }
            map.mapObjects.addTapListener { mapObject, point ->
                viewModel.latitude = point.latitude
                viewModel.longitude = point.longitude
                Log.d("@@StartTrans","StartTransaction")
                /*findNavController().navigate(R.id.action_mapsFragment_to_infoFragment)*/
                true
            }
        }
    }

Я пробовал и отдельно их использовать и вместе и в корутине. Единственное, что понял по документации, что нужно хранить(?), но как тогда потом использовать слушатель на сохраненных маркерах непонятно.


Ответы (0 шт):