如何在 GMSMapView 前面添加按钮



我正在尝试在GMSMapView视图前面添加一个按钮。 这是我的代码:

@IBOutlet weak var testButton: UIButton! 
@IBOutlet weak var mapView2: GMSMapView! 
override func viewDidLoad() {
super.viewDidLoad()
loadView()
}

那么这是loadView()的方法

override func loadView() {
let camera = GMSCameraPosition.camera(withLatitude: 54.2785691, longitude: -8.4620978, zoom: 18.0)
let mapView2 = GMSMapView.map(withFrame: CGRect.zero, camera: camera)
view = mapView2 
mapView2.bringSubviewToFront(testButton)
}

这是我收到的错误:

线程 1:致命错误:解开可选值时意外发现 nil

任何帮助将不胜感激!

你可以试试

class MyVc:UIViewController { 
@IBOutlet weak var testButton: UIButton! 
@IBOutlet weak var mapView2: GMSMapView! 
override func viewDidLoad() {
super.viewDidLoad()
let camera = GMSCameraPosition.camera(withLatitude: 54.2785691, longitude: -8.4620978, zoom: 18.0)
mapView2.animate(to: camera)
view.bringSubviewToFront(testButton)
}
}

我希望 IB 中的用户界面

View-> 
-testButton
-mapView2

顺便说一句,您可以重新排列视图而不是bringSubviewToFront

View-> 
-mapView2
-testButton

底部元素位于前面的位置

也不要为此类问题实现loadView,因为只有当您以编程方式创建 vc 或想要添加除 IB 之外的其他项目时才重要,在后一种情况下,您应该调用super.loadView()

相关内容

  • 没有找到相关文章

最新更新