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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions