I have been checking a couple of related posts regarding the callout behaviour. I know didAddAnnotationViews could bring annotation view along with the pin when it starts dropping. But what I actually want is show the annotation AFTER the pin is dropped onto the map, just like when you search an address in "Maps" application on iPhone, the pin drops on the map, and then the annotation pops up. Does anyone know how to do that? Do I need to do some customisation on the annotation view? Thanks.
Related
I am using CLLocationManager to retrieve current location in my app and display using MapView, i want to slide the map so that the current location should also change to the new location where the map slides and it should annotate to the new location, how to do it? Please give your suggestions with sample code.
You probably don't mean "the current" since that means where the phone actually is, unless you want to transport the phone to another place when using this app which would be quite a feat. So, how about drawing a layer over the top of your map that keeps a pin drawn at the centre so it looks as if the pin is moving over the map, but really the map is moving under the pin.
I insert a mapView in my app, and insert annotations, but he put one pin in the places and when i touch the pins appear my annotation with one title and one line of text, i made this using one basic tutorial
Now i need to change this annotation to have a image, a button and a name, or just one image, i need that every coordinate i mark to have one annotation be like this image and don't that red pin:
and when i touch this annotation, this have to change to this: (animation will be nice here)
and when i touch this red button i will go to another view, but i'm in trouble with this, i'm looking for tutorials, but nothing that really help me, but i'm even don't know how to start this.
I am working on the map application and as per requirement i need to show a single pin for a single region even if it has multiple user coordinates when its completely zoomed out but when its zoomed in to the map then i should display all the pins as per its coordinates.
I have given example below to explain my problem.
I have city New York on this city I have 100 pins on my mapview when I am zooming out of my map it should show me only one annotation pin on the place of 100 pins but when I am zooming in then it should show again 100 pin on map.
Does any one knows about this. I need suggestion. Please note that I am getting all the locations from web services except my current location. This should not be affecting application so that application shouldn't become slow.
Please suggest some solution.
The Apple WWDC 2011 video, "Visualizing information geographically with MapKit", https://developer.apple.com/videos/wwdc/2011/
shows how to cluster map annotations - it's exactly what you need.
Of course there is a control for that...
Take a look at OpenClusterMapView, it should be exactly what you need.
There is no API for this.
You will need to manage the pins yourself. As a user zooms in on the map, you will need to decide at what point to remove the aggregated pin and add the individual pins. Inversely, as a user zooms out you will need to remove the individual pins and replace with the aggregated pin.
Might be a good idea to use a custom pin for the aggregated pin to suggest that it represents multiple pins.
I think this link might help you know the current zoom level:
Zoom and Region
Link to a similar question:
Pin Overlap
I'm creating an iPhone application that gets the user to drop a pin where ever they want. After they drop the pin the user then clicks on it and i want it to show the location of the pin in the call out as the subtitle.
I have the mapview set up as well as the call out working and also the user is able to drop the pin where ever they want to on the map.
I know there is a tutorial for dragging and dropping a pin and they do cover something of this sort. But i'm actually really confused and was wondering if someone could point me in the right direction.
I've a good tutorial regarding the draggable pin.
The source code is available: http://github.com/digdog/MapKitDragAndDrop
I want to make an app that partially mimics some of the behavior the standard map application has. This has proven difficult. First of all, I don't understand how you make annotations movable. How exactly do you do this?
Second: how do you search for locations?
Moving annotations
I'm assuming you're after the behavior of Maps.app where you tap and hold on to a pin to move it around freely. As far as I know, there is no built in way of moving annotations around. Since annotations are subclasses of UIView though, you can draw them where and how you'd like. You could for example detect a tap-n-hold on the annotation, and when "unlocked" change the centerOffset value of your annotation to move it around with the touch. When the user lets go of the the view, you can note the position on the screen, and use the MKMapView method convertPoint:toCoordinateFromView: to get the coordinates that the pin was released.
Search for location
What you are looking for is called Forward Geocoding. Unfortunately, MapKit only comes with Reverse Geocoding (the process of converting GPS coordinates to country/city/street/etc). There is, however, several alternatives. Here's a few ways:
http://code.google.com/apis/maps/documentation/geocoding/index.html
http://cloudmade.com/products/iphone-sdk
http://www.geonames.org/export/web-services.html
http://developer.yahoo.com/maps/rest/V1/geocode.html
Note that many geocoding APIs are licensed under Creative Commons, or similar licenses.
You should be able to get drag-and-drop annotations going with the help of this blog post. I used it to do the same thing, and it was pretty simple to get going.
MapKit annotation drag and drop with callout info update