Добавить карту google в uiview

Рейтинг: 1Ответов: 1Опубликовано: 22.12.2014

Я создал viewcontroller с картами гугл, но у меня есть необходимость вставить карту не во весь размер viewcontroller, и у меня это получилось (к новой view я добавил класс GMSMapView), но мне на эту карту нужно поставить маркеры. Пример моего маркера:

    CLLocationCoordinate2D position2 = CLLocationCoordinate2DMake(59.957069, 30.323013);
GMSMarker *london2 = [GMSMarker markerWithPosition:position2];
london2.title = @"my office";
london2.snippet = @"description";
london2.map = mapView_;

Вопрос: если я добавляю строчку self.view = mapView_;, то карта отражается на весь экран с нужными мне маркерами, если убираю, то отражается без маркеров, но нужного мне размера. Как это исправить (сделать карту нужного размера и маркерами)?

- (void)viewDidLoad {
    [super viewDidLoad];
    self.mapView_.mapType = kGMSTypeNormal;
 self.mapView_.settings.compassButton = YES;
 self.mapView_.settings.myLocationButton = YES;
  self.mapView_.delegate = self;
 [GMSServices provideAPIKey:@"AIzaSyAob82BnXLkqTEKA675GbEveoTQZNBZst4"];
   GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:-33.86
                                                            longitude:151.20
                                                                 zoom:1];
    mapView_ = [GMSMapView mapWithFrame:CGRectZero camera:camera];

    mapView_.myLocationEnabled = YES;
    mapView_.settings.compassButton = YES;
    mapView_.settings.myLocationButton = YES;
    //self.view = mapView_;

GMSMarker *london2 = [GMSMarker markerWithPosition:position2];
london2.title = @"my office";
london2.snippet = @"description";
london2.map = mapView_;

Ответы

▲ 1Принят

Вот такая строка очень помогла:

mapView.frame = CGRectMake(YOUR_MAP_X, YOUR_MAP_Y, YOUR_MAP_WIDTH, YOUR_MAP_HEIGHT);
[self.view addSubview:mapView_];