MKMapView делает панель навигации прозрачной

Я переношу существующее приложение iOS 6 на новый iOS 7. Но всякий раз, когда экземпляр MKMapView появляется на экране, моя панель навигации теряет цвет оттенков.

Шаги для воспроизведения:

  • Открыть Xcode;

  • Создайте новое приложение "Мастер-детализация";

  • Добавьте следующую строку в качестве первого метода AppDelegate.m didFinishLaunchingWithOptions:

    [[UINavigationBar appearance] setBarTintColor:[UIColor redColor]]

  • Добавьте следующую строку в файл MasterViewController.m:

    #import <MapKit/MapKit.h>

  • Наконец, добавьте следующие строки в метод MasterViewController.m cellForRowAtIndexPath:

    MKMapView *view = [[MKMapView alloc] initWithFrame:CGRectMake(0, 0, 100, 40)]; [cell.contentView addSubview:view];

  • Построение и запуск

Вот результаты:

OkNavigation bar got transparentIssued UI

Я что-то делаю неправильно? Что я могу сделать, чтобы исправить эту проблему?

Должен ли я начинать использовать API Карт Google?

Ответ 1

Кажется, что это исправлено сейчас (новейшая версия ios). Я получил ошибку ни в симуляторе, ни на устройстве.

Ответ 2

dfine размер (ширина, высота) карты, прежде чем использовать его, а если нет, то используйте его с включенным контроллером навигации в mapviewcontroller, это может помочь вам