我正在使用Google地图,但在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()
我模拟器的截图:
您在谷歌地图右侧看到了空白区域
我的故事板上的截图:
答案 0 :(得分:0)
在viewDidLoad
中,您的视图未完全渲染,因此行
mapView = GMSMapView.map(withFrame: mapSubView.bounds, camera: camera)
将根据特定时间的边界设置mapView的大小。有几个工作。一种是在以后渲染mapView,例如在viewWillAppear
。另一种方法是在故事板中创建UIView
,设置它的约束,使其类为GMSMapView
并连接@IBOutlet
。此外,您可以使用autoresizingMask