How to show blue pin with dot (circle) in MKMapVie

2020-02-26 10:56发布

my question may seem a bit complicated but let me clarify. i am using mkmapview , in this i want to show current user location with blue dot and circle , but this isn't really exactly what I wanted. As I am making an iPhone application,SInce I am new to map integration its getting difficult for me to do the same.IF any one can provide me a link for its demo or can explain me how to show user location with blue dot with circle on map then it would be of great help to me . Thanks in advance

4条回答
家丑人穷心不美
2楼-- · 2020-02-26 11:20

Add this to the top of the viewForAnnotation method:

if ([annotation isKindOfClass:[MKUserLocation class]])
return nil;

The special user location annotation is of type MKUserLocation and returning nil in that case tells the map view to draw the default view for it which is the blue dot. and go in MKMapview property and check the show user location....

查看更多
我只想做你的唯一
3楼-- · 2020-02-26 11:35

This is one of properties of MKMapView class. Default value is No, so just set it to YES in your code.

Note that if you add a MapView on to your ViewController in Storyboard, look at the attribute inspector, by default has other annotations checked (Buildings, Points of Interest) on your MapView excepts User Location. It took me a while to find this, it feels like I am playing hide and seek, no sure why it so important to leave this unchecked.

self.mapView.showsUserLocation = YES;

As thexande mentioned, for swift3 you will have to set this to true:

self.mapView.showsUserLocation = true;
查看更多
Animai°情兽
4楼-- · 2020-02-26 11:42

For SWIFT 3

if (annotation.isKind(of: MKUserLocation.self)){
        return nil
    }

This will allow you to show a blue dot for your user's location in swift 3.

Put this code in the mapView viewFor annotation func

查看更多
贼婆χ
5楼-- · 2020-02-26 11:44

Answer of @Ohmy is correct but in my program the case was different :

From iOS10 you need to add NSLocationWhenInUseUsageDescription or NSLocationAlwaysUsageDescription key in your app Info.plist based on your requirement.

查看更多
登录 后发表回答