diff --git a/iphone/Maps/Classes/CustomViews/NavigationDashboard/MWMNavigationDashboardManager.mm b/iphone/Maps/Classes/CustomViews/NavigationDashboard/MWMNavigationDashboardManager.mm index 42551ba1dc..43c06fb061 100644 --- a/iphone/Maps/Classes/CustomViews/NavigationDashboard/MWMNavigationDashboardManager.mm +++ b/iphone/Maps/Classes/CustomViews/NavigationDashboard/MWMNavigationDashboardManager.mm @@ -134,8 +134,7 @@ NSString *const kNavigationControlViewXibName = @"NavigationControlView"; self.navigationInfoView = nil; _navigationControlView.isVisible = NO; _navigationControlView = nil; - [_baseRoutePreviewStatus hide]; - _baseRoutePreviewStatus = nil; + [self.baseRoutePreviewStatus hide]; [_transportRoutePreviewStatus hide]; _transportRoutePreviewStatus = nil; } @@ -147,7 +146,7 @@ NSString *const kNavigationControlViewXibName = @"NavigationControlView"; [routePreview statePrepare]; [routePreview selectRouter:[MWMRouter type]]; [self updateGoButtonTitle]; - [_baseRoutePreviewStatus hide]; + [self.baseRoutePreviewStatus hide]; [_transportRoutePreviewStatus hide]; for (MWMRouteStartButton *button in self.goButtons) [button statePrepare]; @@ -204,8 +203,7 @@ NSString *const kNavigationControlViewXibName = @"NavigationControlView"; self.routePreview = nil; self.navigationInfoView.state = MWMNavigationInfoViewStateNavigation; self.navigationControlView.isVisible = YES; - [_baseRoutePreviewStatus hide]; - _baseRoutePreviewStatus = nil; + [self.baseRoutePreviewStatus hide]; [_transportRoutePreviewStatus hide]; _transportRoutePreviewStatus = nil; [self onNavigationInfoUpdated]; diff --git a/iphone/Maps/Classes/CustomViews/NavigationDashboard/Views/RoutePreview/RoutePreviewStatus/BaseRoutePreviewStatus.swift b/iphone/Maps/Classes/CustomViews/NavigationDashboard/Views/RoutePreview/RoutePreviewStatus/BaseRoutePreviewStatus.swift index 73cd7a798f..d01a7897c1 100644 --- a/iphone/Maps/Classes/CustomViews/NavigationDashboard/Views/RoutePreview/RoutePreviewStatus/BaseRoutePreviewStatus.swift +++ b/iphone/Maps/Classes/CustomViews/NavigationDashboard/Views/RoutePreview/RoutePreviewStatus/BaseRoutePreviewStatus.swift @@ -51,12 +51,8 @@ final class BaseRoutePreviewStatus: SolidTouchView { private var isVisible = false { didSet { - guard isVisible != oldValue else { return } - if isVisible { - addView() - } else { - self.removeFromSuperview() - } + addView() + isHidden = !isVisible } } @@ -68,6 +64,7 @@ final class BaseRoutePreviewStatus: SolidTouchView { leadingAnchor.constraint(equalTo: lg.leadingAnchor).isActive = true trailingAnchor.constraint(equalTo: lg.trailingAnchor).isActive = true bottomAnchor.constraint(equalTo: lg.bottomAnchor).isActive = true + ownerView.layoutIfNeeded() } private func updateHeight() {