SwiftUI:如何在地图视图上更改地图类型?

3

我正在添加一个类似这样的地图视图:

            Map(coordinateRegion: $coordinateRegion)
                                .frame(height: 400, alignment: .center)
                                .cornerRadius(5)
                                .shadow(radius: 4)

地图显示如下:

输入图片说明

我想允许用户更改地图类型(卫星等)。

在SwiftUI中有设置地图类型的方法吗?


1
你需要在 'UIViewRepresentable' 中使用 'UIKit MapView'。不幸的是,今年地图方面没有更新。 - Yrb
是的,我刚刚在网上读了很多东西,我认为情况应该是这样的...甚至像放置一个图钉这样简单的事情也因为 SwiftUI 缺乏适当的手势位置支持而变得混乱...谢谢。 - zumzum
2个回答

4

目前,我担心你必须使用以下方式访问mapType:

MKMapView.appearance().mapType = .satellite // 或任何其他地图类型

你只需要在onAppear中使用它。我不确定是否有更好的方法,但至少它是有效的 :)

目前仍需使用UIKit Mapview进行更详细的规格说明。


我已经尝试过这个,但似乎不起作用。 - yawnobleix
对我来说运行良好。 - TalkingCode

-2
.onAppear {
  MKMapView.appearance().mapType = .satellite
}

这是对Bortol15答案的感谢和重申吗? - James Risner

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接