gpt4 book ai didi

单击 map 注释时的 SwiftUI 操作

转载 作者:行者123 更新时间:2023-12-05 07:07:37 26 4
gpt4 key购买 nike

在 MapView 中单击特定注释时,我希望添加一个包含注释信息的叠加层。

我正在寻找的是能够更新变量然后调用 updateUIView() 以便 map 显示与被单击的注释对应的叠加层。

最佳答案

你可以这样做:

let places: [Place] = [
.init(name: "One", coordinate: .init(latitude: 56.951924, longitude: 24.125584)),
.init(name: "Two", coordinate: .init(latitude: 56.967520, longitude: 24.105760)),
.init(name: "Five", coordinate: .init(latitude: 56.9539906, longitude: 24.13649290000000))
]

@State var coordinateRegion = MKCoordinateRegion(center: .init(latitude: 54.6872, longitude: 25.2797), latitudinalMeters: 2000000, longitudinalMeters: 2000000)

var body: some View {
Map(coordinateRegion: $coordinateRegion, annotationItems: places) { (place) in
MapAnnotation(coordinate: place.coordinate) {
Button(action: { print(place.name) }, label: {
Text(place.name)
})
}
}
}

关于单击 map 注释时的 SwiftUI 操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62065418/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com