Skip to content

Не могу убрать слой навигатора с карты, а также скрыть (включая ивент) нижнего вью навигатора #6

@Vasily-IOS

Description

@Vasily-IOS

Здравствуйте!
Использую версию SDK для iOS 10.1.0

Описание проблем:

  1. Не могу убрать слой навигатора с основного слоя карты.
    В приложении есть функционал ведения по маршруту. После окончания ведения по маршруту не получается убрать слой навигатора с карты, собственно как и все UI компоненты навигатора.
    Подскажите заодно, пожалуйста, чтобы корректно убрать слой навигатора из карты надо сначала остановить ведение по маршруту, верно?

Функция настройки навигатора:
private func initNavigator() {
do {
// Создаём NavigationManager.
navigationManager = try NavigationManager(platformContext: sdk.context)

        // Добавляем карту в навигатор.
        navigationManager?.mapManager.addMap(map: mapFactory.map)

        // Создаём фабрику UI-компонентов навигатора.
        let navigationViewFactory = try sdk.makeNavigationViewFactory()

        // Создаём с помощью фабрики слой навигатора и размещаем его в иерархии выше слоя карты.
        navigationView = navigationViewFactory.makeNavigationView(
            map: mapFactory.map,
            navigationManager: navigationManager!
        )

        // убираем sheet библиотеки 2Gis
        navigationView?.subviews[0].subviews[7].isHidden = true
     
        DispatchQueue.main.async {
            // добавление слоя навигатора на карту
            if let navigationView = self.navigationView {
                navigationView.translatesAutoresizingMaskIntoConstraints = false
                self.view.addSubview(navigationView)
                NSLayoutConstraint.activate([
                    navigationView.leftAnchor.constraint(equalTo: self.view.leftAnchor),
                    navigationView.rightAnchor.constraint(equalTo: self.view.rightAnchor),
                    navigationView.topAnchor.constraint(equalTo: self.view.topAnchor),
                    navigationView.bottomAnchor.constraint(equalTo: self.view.bottomAnchor, constant: -150)
                ])
            }
        }
    } catch {
        debugPrint(error)
    }
}
  1. При попытке убрать слой навигатора с карты ловлю краш приложения. Как исправить?
  2. Как корректно убрать нижнее расширяющееся вью из навигатора, которое при подъеме затемняет экран? (фото и видео прикладываю)

photo_2024-05-21 12 48 31

2024-05-21.12.50.30.mp4

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions