【问题标题】:SwiftUI - Show predefined location as a user location on mapSwiftUI - 在地图上将预定义位置显示为用户位置
【发布时间】:2023-01-18 21:12:43
【问题描述】:

我正在构建一个很大程度上依赖于用户位置的应用程序。

当应用程序启动时,用户会看到一系列视图(入职),在最后一个视图中有以下选项:

一种)点击获取您的位置:

在这种情况下,我们按照plistLocationManager 的标准程序来获取用户的位置并将其显示在地图上。

二)预定义位置:

在这种情况下,我将设置一个预定义的位置,以便应用程序按预期工作,但没有用户的位置。

问题:

我设法做到了这两点,但我遇到的问题是在 B) 预定义位置的情况下,我在地图上看不到用户的点.我只看到 annotationItem。如果我获得了用户的位置(选项 A),我可以在地图上看到用户的位置和 annotationItem。

这就是我创建地图的方式:

Map(coordinateRegion: $buildingRegion, showsUserLocation: true, annotationItems: [building], annotationContent: { building in
    MapAnnotation(coordinate: building.coordinate) {
        AnnotationItem()
    }
})

知道为什么我不能在地图上显示预定义的用户位置吗?当用户选择允许应用程序获取当前位置时,我觉得幕后发生了一些事情。

先感谢您。

【问题讨论】:

    标签: swiftui mapkit cllocationmanager


    【解决方案1】:

    只有当用户允许位置访问时,当前用户位置的“蓝点”才会出现在地图上。

    如果用户拒绝访问,或者您没有询问,则不会显示任何点。

    如果您想在给定位置显示一个点,则需要添加自定义注释。

    【讨论】:

      猜你喜欢
      • 2019-10-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多