Swift 删除 MKMap 视图上的“我的位置”注释
Posted
技术标签:
【中文标题】Swift 删除 MKMap 视图上的“我的位置”注释【英文标题】:Swift Removing the "My Location" Annotation on MKMap View 【发布时间】:2018-05-13 15:14:17 【问题描述】:问题:
我希望禁止触摸用户位置以阻止“我的位置”注释
我一直在寻找解决方案一段时间,经过广泛的在线研究,我什至还没有找到这个问题。
我创建了一个用 Swift 编写的移动应用程序,其中 MKMap 视图上有注释。我遇到的问题是当用户选择他们附近的笔记时,它有时会显示此“我的位置”注释,以显示正确的笔记。
我确定有办法阻止这个注释,我已经写了一个语句来帮助我识别弹出窗口
if (((view.annotation?.title)!)! == "My Location")
print("wrong annotation selected")
有什么方法可以禁用对用户位置图标的触摸?
我已经用
改变了圆圈的颜色map.tintColor = UIColor(red:0.19, green:0.69, blue:0.73, alpha:1.0)
所以我在想可能会有一个
map.UserLocationTouch = false
或类似的东西。
【问题讨论】:
实现 viewForAnnotation 委托方法,然后您可以为用户位置注释返回自己的注释视图 或者你可以简单地通过将showsUserLocation属性设置为false来隐藏用户位置 @Paulw11 我想保留用户位置,它是必需的,因为如果您远离它们,有些笔记将无法打开。 注释是注释吗?为什么用户位置的标注有问题? 注释通常会打开一个新窗口,其中包含信息。用户需要在 30 米范围内才能打开便笺,因此他们通常必须在图像上方。如果他们离得太近,他们会不小心点击他们当前的位置,这会阻止新窗口打开并显示上图。 【参考方案1】:mapView.userLocation.title = ""
并且按下时不会出现注释。
【讨论】:
【参考方案2】:嘿,有一个更新的简单解决方案:
.Net for ios (Xamarin.iOS)
NativeMap.UserLocation.Title = "";
斯威夫特:
mapView.userLocation.title = "";
问候 ;)
【讨论】:
请不要对多个问题发布相同的答案。相反,针对所提出的问题定制答案。如果问题彼此完全相同,请投票/标记以关闭。以上是关于Swift 删除 MKMap 视图上的“我的位置”注释的主要内容,如果未能解决你的问题,请参考以下文章
在 xamarin ios 中使用 MkMap 不会出现路线