Он довольно старый, но, возможно, все еще актуален для некоторых из вас.
Я хотел сделать карту темнее, но не аннотации.
То, что я сделал, было очень просто, и я пока не знаю, есть ли у него запасные варианты ...
Я поместил UIView
с черным прозрачным фоном над MKMapView
, а затем добавил следующий код:
- (void)mapView:(MKMapView *)mapView didAddAnnotationViews:(NSArray<MKAnnotationView *> *)views
{
for (MKAnnotationView *view in views) {
view.center = [self.mapView convertCoordinate:view.annotation.coordinate toPointToView:self.viewDark];
[self.viewDark addSubview:view];
}
}
Надеюсь, это поможет ... и, конечно, - если вы обнаружите какие-либо проблемы с этим решением, пожалуйста, дайте мне знать:)
Редактировать № 1:
Забыл упомянуть, что self.viewDark
должен иметь userInteraction
отключенным.
Редактировать # 2:
Еще одна вещь, которая помогла мне установить self.viewDark
autoresizesSubviews
на NO
.