如何在iPhone中的MKMapView中显示带圆点(圆圈)的蓝色图钉

Yat*_*ain 7 iphone mkmapview

我的问题可能看起来有点复杂,但让我澄清一下.我正在使用mkmapview,在此我想用蓝点和圆圈显示当前用户位置,但这并不是我想要的.当我正在制作一个iPhone应用程序时,SInce我是一个新的地图集成,我很难做同样的事情.任何人都可以为我的演示提供一个链接或者可以解释我如何用蓝点圆圈显示用户位置在地图上然后它对我有很大的帮助.提前致谢

Ohm*_*hmy 7

这是MKMapView类的属性之一.默认值为No,因此只需在代码中将其设置为YES即可.

请注意,如果在Storyboard中向ViewController添加MapView,请查看属性检查器,默认情况下,MapView上的其他注释(建筑物,兴趣点)除用户位置外.我花了一段时间才发现这一点,感觉我正在玩捉迷藏,不知道为什么让这个不受限制如此重要.

self.mapView.showsUserLocation = YES;
Run Code Online (Sandbox Code Playgroud)

正如thexande所提到的,对于swift3,你必须将其设置为true:

self.mapView.showsUserLocation = true;
Run Code Online (Sandbox Code Playgroud)


vij*_*jay 6

将此添加到 viewForAnnotation 方法的顶部:

if ([annotation isKindOfClass:[MKUserLocation class]])
return nil;
Run Code Online (Sandbox Code Playgroud)

特殊的用户位置注释是 MKUserLocation 类型,在这种情况下返回 nil 告诉地图视图为其绘制默认视图,即蓝点。并进入 MKMapview 属性并检查显示用户位置....


tto*_*bik 5

对于 SWIFT 3

if (annotation.isKind(of: MKUserLocation.self)){
        return nil
    }
Run Code Online (Sandbox Code Playgroud)

这将允许您在 swift 3 中为用户的位置显示一个蓝点。

把这段代码放在mapView viewFor annotation func