[英]Type 'TextView' does not conform to protocol 'UIViewRepresentable'
[英]SwiftUI: GMSMapView does not conform to protocol UIViewRepresentable
我正在尝试将谷歌地图 api 中的 GMS Mapview 添加到我的应用程序中。 当我按照教程了解如何实现它时,Xcode 似乎无法理解 GMSMapview 是 UIView。
这是我的代码
import SwiftUI
import GoogleMaps
struct MapsView: UIViewRepresentable {
private let zoomLevel: Float = 10.0
@ObservedObject var locationManager = LocationService()
func makeUIView(context: Context) -> some GMSMapView {
let camera = GMSCameraPosition.camera(withLatitude: locationManager.lat, longitude: locationManager.lat, zoom: zoomLevel)
let mapView = GMSMapView.map(withFrame: CGRect.zero, camera: camera)
return mapView
}
func updateUIView(_ mapView: GMSMapView, context: Context) {
mapView.animate(toLocation: CLLocationCoordinate2D(latitude: locationManager.lat, longitude: locationManager.lon))
}
}
Xcode 也没有为我提供任何类型的解决方案以使其符合要求。
在我的 Podfile 中,我只添加了没有版本号的“GoogleMaps”。 所以我相信我使用的是最新版本。
这是谷歌地图 package 中的一个已知错误,还是我做错了什么?
删除some
词。
func makeUIView(context: Context) -> GMSMapView { //<-- here
let camera = GMSCameraPosition.camera(withLatitude: locationManager.lat, longitude: locationManager.lat, zoom: zoomLevel)
let mapView = GMSMapView.map(withFrame: CGRect.zero, camera: camera)
return mapView
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.