我正在使用 Google map ,但它在 subView
中的设置不正确。
我正在使用 swift 3。
@IBOutlet weak var mapSubView: UIView!
var mapView:GMSMapView!
var placesClient: GMSPlacesClient!
我在viewDidLoad
中使用了以下代码:
let camera = GMSCameraPosition.camera(withLatitude: 28.616536, longitude: 77.379552, zoom: 12.0)
mapView = GMSMapView.map(withFrame: mapSubView.bounds, camera: camera)
mapSubView.addSubview(mapView)
mapView.delegate = self
self.drawPath()
placesClient = GMSPlacesClient.shared()
我的模拟器截图:
您在谷歌地图附近的右侧看到了空白
还有我 Storyboard的截图:
最佳答案
在 viewDidLoad
中,您的 View 未完全呈现,因此该行
mapView = GMSMapView.map(withFrame: mapSubView.bounds, camera: camera)
将根据特定时间的边界设置 mapView 的大小。有几个解决方法。一种是稍后呈现您的 mapView,例如在 viewWillAppear
中。另一种是在 Storyboard 中创建一个 UIView
,设置它的约束,使其类成为 GMSMapView
并连接一个 @IBOutlet
。此外,您可以使用 autoresizingMask
关于ios - 谷歌地图不适合 subview ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47323989/