2013-03-28 3 views
4

Я пытаюсь загрузить места внутри Google Map View для iOS6. Как установить рамку для карты? В настоящее время он является полноэкраннымКак установить фрейм для mapview - в google GMSMap для iOS6

-(void)loadView { 

    GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:10.00989 
                 longitude:76.316142 
                  zoom:15]; 
    mapView_ = [GMSMapView mapWithFrame:CGRectZero camera:camera]; 
    self.view = mapView_; 

    } 

Я попытался, создав новый (маленький) вид внутри текущего вида и добавить карты в этом, но в то время страница не получает loaded.It показывает полный черный экран

-(void)loadView { 

    GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:10.00989 
                 longitude:76.316142 
                  zoom:15]; 
    mapView_ = [GMSMapView mapWithFrame:CGRectZero camera:camera]; 

    [self.view Addsubview:newView]; 
    self.newView = mapView_; 

    // I also tried like this - [self.newView Addsubview:mapView_; 

    } 
+0

Как добавить NewView? Вы используете xib или раскадровку или создаете все с кодом? –

+0

Я добавляю его в Xib .. не используя доску объявлений – user2115266

+0

любой ... обновление от вас? – TonyMkenu

ответ

0

Не думаю, что loadView вызывается, когда вы используете xib. Я не пробовал использовать SDK Google Maps для iOS с xib, поскольку я создаю все свои представления программным путем.

Возможно, вы сможете добавить свое представление в карте в viewDidLoad? Так, например:

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 

    GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:10.00989 
                longitude:76.316142 
                 zoom:15]; 
    mapView_ = [GMSMapView 
     mapWithFrame: CGRectMake(
      0, 0, 
      self.newView.frame.size.width, self.newView.frame.size.height)    
     camera: camera]; 

    [self.newView addSubview: mapView_]; 
} 
+0

no..this также дает черный экран :( – user2115266

+0

Хм, у меня нет опыта использования xibs, поэтому я думаю, что у меня нет идей, извините :( –

1

Трудно сказать, если ваша проблема заключается в добавлении вида карты или чего-то вверх по течению.

Установили ли вы контрольную точку в -viewDidLoad, чтобы убедиться, что она вызвана?

Проверьте границы newView, чтобы убедиться, что это то, что вы ожидаете. Виден ли новый вид? Является ли это подпунктом self.view?

Один трюк, который вы можете использовать, пытаясь обеспечить, чтобы ваши взгляды находились там, где вы ожидаете, это установить цвет фона на что-то очевидное, например, на красный, а затем вы можете ясно видеть на экране, если это то, что вы ожидаете. Если вы сделаете это и не увидите красную рамку, тогда ваша проблема не в картах, это где-то вверх по течению в коде, который вы нам не показали.

Удачи.

5

Вы можете попробовать ... что работает для меня :)

//header file 
... 
@property (nonatomic, weak) IBOutlet GMSMapView *mapView; 
@property (weak, nonatomic) IBOutlet UIView *subview; //viewForMap 
... 

файл реализации

GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:10.8683 
                  longitude:76.2086 zoom:6 
                   bearing:0 
                 viewingAngle:0 
                   ]; 
    self.mapView = [GMSMapView mapWithFrame:_subview.bounds camera:camera]; 
    [_subview addSubview:_mapView]; 
1

Создать CGRect с требуемыми размерами рамы и установить MAPview кадр с методом mapWithFrame: и затем добавьте mapview в качестве основного подсмотра. Ниже приведен код, который объясняет все. CGRect fr= CGRectMake(0, 44, 768, 960); mapView_ = [GMSMapView mapWithFrame:fr camera:camera]; mapView_.myLocationEnabled = YES; [self.view addSubview:mapView_];

+0

спасибо, чувак! !! –

0

Вам нужно сделать, как это

-(void)loadView { 

    GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:10.00989 
                 longitude:76.316142 
                  zoom:15]; 

    mapView_ = [GMSMapView mapWithFrame:self.newView.bounds camera:camera]; 

    [self.view addSubview:newView]; 

    [self.newView addSubview:mapView_]; 
} 
Смежные вопросы