2013-05-11 13 views
12

Sto sviluppando un'app iOS con Google Maps iOS SDK con storyboard. Sul mio principale controller della vista in "viewDidLoad" Ho implementato un GMSMapView e lo mostra daSDK iOS di Google Maps - Aggiungi UIView/UIButton su GMSMapView

self.view = mapView_; 

e tutto va bene. Ora voglio aggiungere un UIView o UIButton sulla mappa, come lo stile del mio pulsante Posizione. C'è qualche soluzione per aggiungerlo e usarlo tramite lo storyboard? Ho sovrapposto gli oggetti sulla mappa in base al codice, ma ho davvero bisogno dell'autolayout, quindi gestirlo tramite Storyboard sarebbe bello. Grazie.

+0

Si prega di controllare la mia risposta: http://stackoverflow.com/a/29732806/2086889 – DevSherif

risposta

1

Vuoi un pulsante di posizione con la tua immagine personalizzata? o cosa? Hai provato con: mapview_.settings.myLocationButton = YES; Puoi essere un po 'più specifico con quello che vuoi? Sto anche utilizzando GM SDK per iOS, quindi forse posso aiutarti.

+2

Questo è più appropriato come commento. – techuser

+1

Desidero aggiungere oggetti dell'interfaccia utente personalizzati come un pulsante o una barra di ricerca sulla mappa. Ad esempio, la barra di ricerca e il pulsante di contatto nell'app per iOS ufficiale di google maps. – FabioM

0

Si potrebbe provare qualcosa di simile:

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

Ciò inserirà la mappa come una visualizzazione secondaria della vista principale (invece di sostituire la vista root), lasciando le altre visualizzazioni (cioè i pulsanti ecc) in luogo . Inserendolo nell'indice 0 lo metterà sotto le altre viste.

14

Prova questa (avendo cura di impostare la cornice mapview ad un valore diverso da CGRectZero (che funziona per self.view = solo mapview)):

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

Come detto sassone, inserendo la vista all'indice 0 imposterà il resto degli oggetti in primo piano.

+0

Questo funziona e @FabioM controlla la risposta perché è corretta – AndroidFreak

4

In realtà, questo è l'unico modo che ha funzionato per me dopo aver provato tutto quello che c'è fuori

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

Buona fortuna

0

Aggiungi la tua mappa come una visualizzazione secondaria

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

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

Ora è possibile trascinare e rilascia il tuo qualsiasi pulsante del tuo UIcontrol, campo di testo sarà visibile sopra la mappa o puoi anche aggiungere come sottoview come sopra.

Problemi correlati