2013-05-11 11 views
12

Zajmuję się tworzeniem aplikacji na iOS z Google Maps iOS SDK z storyboardem. Na moim głównego kontrolera widoku w „viewDidLoad” I wdrożyliśmy GMSMapView i pokazuje goGoogle Maps iOS SDK - Dodaj UIView/Uibutton przez GMSMapView

self.view = mapView_; 

i wszystko idzie dobrze. Teraz chcę dodać UIView lub UIButton na mapie, jak na przykład przycisk myLocation. Czy istnieje jakieś rozwiązanie, aby go dodać i użyć w scenorysie? Nakładałem obiekty na mapie za pomocą kodu, ale naprawdę potrzebuję autolayout, więc zarządzanie przez Storyboard byłoby miłe. Dzięki.

+0

Prosimy o sprawdzenie mojej odpowiedzi: http://stackoverflow.com/a/29732806/2086889 – DevSherif

Odpowiedz

1

Czy chcesz mieć przycisk lokalizacji z własnym niestandardowym obrazem? albo co? Czy próbowałeś z: mapview_.settings.myLocationButton = YES; Czy możesz być nieco bardziej konkretny z tym, czego chcesz? Używam także GM SDK dla iOS, więc może będę mógł ci pomóc.

+2

Jest to bardziej odpowiednie jako komentarz. – techuser

+1

Chciałbym dodać niestandardowe obiekty interfejsu użytkownika, takie jak przycisk lub pasek wyszukiwania nad mapą. Na przykład pasek wyszukiwania i przycisk kontaktu w google mapuje oficjalną aplikację na iOS. – FabioM

0

Można spróbować czegoś takiego:

[self.view insertSubview: mapView_ atIndex: 0]; 

To będzie wstawić mapę jako podrzędny widoku głównego (zamiast zastąpienia na stanowisku głównego), pozostawiając inne widoki (czyli przyciski itp) zamiast . Wstawienie go w indeksie 0 spowoduje umieszczenie go pod innymi widokami.

14

Spróbuj (upewniając się ustawić ramkę MapView na wartość inną niż CGRectZero (który pracuje dla self.view = tylko MapView)):

mapView = [GMSMapView mapWithFrame:self.view.bounds camera:camera]; 
[self.view insertSubview:mapView atIndex:0]; 

Jak powiedział Saxon, wkładając widok na indeksie 0 ustawi pozostałe obiekty na wierzchu.

+0

To działa ty i @FabioM sprawdź odpowiedź, ponieważ jest poprawna – AndroidFreak

4

Faktycznie, jest to jedyny sposób, że pracował dla mnie po wypróbowaniu wszystkiego tam

[self.view insertSubview:self.yourUIImageview aboveSubview:self.mapView] 

Powodzenia

0

Dodaj swoją mapę jako podrzędny

GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:coordinate.latitude longitude:coordinate.longitudeoom:6]; 

mapView = [GMSMapView mapWithFrame:self.view.bounds camera:camera];[self.view insertSubview:mapView atIndex:0]; 

Teraz można przeciągnąć i upuść swój dowolny przycisk UIcontrol jak, pole tekstowe będzie widoczne na mapie lub możesz również dodać jako podgląd, jak wyżej.

Powiązane problemy