I have seen the google developers video on custom info window for google maps ios sdk and got it. But how to use it when we have multiple markers. In my application i have to point 10 place and have to use that custom infowindow
I got it, we just have to call the customInfoWindow class how many time we want with new set of parameters.
Not sure exactly if this is what the question was - but you can attach a piece of your own data to the marker using marker.userData. You can make this anything you want - an NSDictionary for example. In -markerInfoWindow:(GMSMarker *marker) you can retrieve the userData and based on that, you can decide what view you want to return. Make sure the userData contains sufficient data to decide what your view should contain and you are good to go.
Related
I'm trying to create a campus navigation app for my college, and in order to do so I need to make a custom map (or use Apple's, but I'd rather make my own), how exactly would I go about it? I had an idea to just use my location and walk around, forcing my phone to draw the map for me (using lines and such) but I wasn't sure how to go about it.
Is there anyway to create a map that updates automatically when new routes are added via anyone's phone? Almost like a collaborative map?
I have been searching and coding with the Google Maps iOS SDK 1.7.2
I need to build an app that displays custom InfoWindow after the marker is tapped.
Google posted a YouTube Video, that shows how to do it with just ONE marker.
The practical use scenario uses more than ONE marker, but if we follow the example of YouTube Video adding more than one marker, all the markers would show the same info inside the custom InfoWindows.
I did a iOS sample and uploaded to GitHub Sample Here
My Question is: Could anyone download the sample at GitHub and help me to implement that feature, display more than one marker with custom InfoWindow displaying different info for each marker ? In my sample inside the InfoWindow there is a WebView. For my use scenario I would need to load for each marker a different WebView(url) for each marker on the map but I couldn't load the WebView inside the custom InfoWindow. That WebView would be the size of the custom InfoWindow.I would load all the info for the markers as different webpages in the size of the info window.
It also would help a lot of other people that right now can't find a complete and fully working sample of that custom InfoWindow for iOS.
Thanks and Cheers!
Another vote for SMCalloutView. Check out my answer here for a quick start on implementing it.
Sorry to not actually answer your question per se, but Google's rendered UIView info windows are more hassle than they're worth, I think. You may be able to get a webview to load inside one of them, but the Maps SDK takes the custom UIView you set and then renders it into OpenGL, ignoring most (all?) updates you try to make.
Using SMCalloutView skips all of that and we put its view on top of the map, allowing you better control before and after drawing.
SMCalloutView helps you to custom the InfoWindow, you can download the Sample project and run it.
For displaying multiple InfoWindows, you have to treat GoogleMaps SDK (GMSMapView has a #property(nonatomic, strong) GMSMarker *selectedMarker property, which is not a Set), see the Sample project, in mapView:didTapAtMarker: delegate method.
I'm using Xcode 5 and the latest iOS SDK and I'm having a really hard time figuring out how to create custom annotations with a clickable button.
All I need is a custom annotation with a button, that is shown when the user taps a pin on my MKMapView. Following some tutorials, I managed to create a custom class that loads a .xib file, this already works. However, the problem is, that whenever I try to click a button placed on the annotation view, the pin gets deselected. I would love to be able to design my annotation in a .xib file and not create it 100% programmatically. Is there any way of doing so?
Thanks,
Niclas
There is a great tutorial on maps on a site I used when I first got started into this section of iOS. It can be found here: http://www.raywenderlich.com/21365/introduction-to-mapkit-in-ios-6-tutorial ( Just an FYI, this is a great resource for learning more about iOS. )
Anyways, this paragraph should sound familiar (as to what you're after):
You’ve now made it so that in the callout when a pin is tapped on, there will be a button on the right hand side. When this is tapped, the mapView:annotationView:calloutAccessoryControlTapped: method is called. In this method, you grab the MyLocation object that this tap refers to and then launch the Maps app by calling the openInMapsWithLaunchOptions: method.
Just note that it is opening up the Maps app, but you can choose to do whatever you want really.
Later on, here are some other great links if you need them:
http://www.raywenderlich.com - This is where I started, recommend you do the same. Use their search box. They sell some privatized/self-published PDF books too if you like that.
http://www.cocoacontrols.com - You could probably find a control someone has already written with maps.. use the search, filter for iOS only.
http://www.nshipster.com - Great building block site
http://objc.io - Great site for getting into more low-level development.
In my application i have to display 15 places belong to city, if the user taps on any place i need to display the details of that place in a info window using some text and images.
I already tried and created a marker and info window using google documentation. But to create 15 markers what is the best way, to create the markers one by one 15 times or can we use arrays
THank YOu.
According to Google maps sdk documentation there is no way to add markers in a bulk fashion therefore you must add them one at a time.
See the following: https://developers.google.com/maps/documentation/ios/marker
So yeah we're trying to display a pretty small version of the map and all the user interface elements were getting in the way.. and we realized a screenshot would probably be just fine, so just wondering if it's possible to generate a screenshot of a map position and just have it display as an image instead of an interactable map.
You can use Google Static Maps to show a non-interactive map without user interface controls (zooming buttons etc.)
As they return an image file it is easy to cache. Please note that Google does not allow caching of maps due to copyright reasons of the map owner, but probably caching is not necessary with the static map.