Google карты для ios проблема

Я учусь разрабатывать для iOS. Я использую API Google Maps для iOS, чтобы сделать карту. Я поместил в свой проект представление, которое я поместил в свой элемент инспектора, например GMSMapView.

В моем коде я помещаю этот код ниже:

- (void) setMapView:(GMSMapView *)mapView {

    if (!mapView) {
        mapView = [[GMSMapView alloc] initWithFrame:mapView.bounds];
    }

    googleMap = mapView;

}

Карта работает, но я хочу настроить камеру на этой карте. В функции viewDidLoad я поместил этот код ниже:

GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:-33.8683
                                                        longitude:151.2086
                                                             zoom:12];

self.mapView = [GMSMapView mapWithFrame:CGRectZero camera:camera];

но Карты Google просто загружают эту карту на Лондон, я не знаю, почему. Координаты из Сиднея. Я пробовал googleMap = [GMSMapView mapWithFrame:CGRectZero camera:camera];, но тоже не работает.

Кто-нибудь может мне помочь?


person Daniel Morsoleto    schedule 19.04.2013    source источник


Ответы (1)


У меня такая же проблема. Вы можете исправить это, анимировав положение камеры после выделения карты. Я добавил задержку перед анимацией в новом положении камеры. Это работает.

- (void)viewDidLoad
{
    self.mapView = [[GMSMapView alloc] initWithFrame:CGRectMake(0, 0, 320, 480)]; // Any Frame

    double delayInSeconds = 0.2;
    dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, (int64_t)(delayInSeconds * NSEC_PER_SEC));
    dispatch_after(popTime, dispatch_get_main_queue(), ^(void){

        GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:-33.8683
                                                                longitude:151.2086
                                                                     zoom:12];

        [self.mapView animateToCameraPosition:camera];

    });
}
person user2302886    schedule 20.04.2013