如上图所示:Picture我在后台有 GoogleMaps视图,前景中有黄色视图。我需要在黄色视图上使用捕捉轻击手势,并将所有其他手势(主要是捏合)转发到GoogleMaps视图。
我尝试将黄色视图添加为子视图 - GoogleMaps视图的子视图(我在此处找到了此建议:https://stackoverflow.com/a/10594097/8851253):
class ViewController: UIViewController {
@IBOutlet weak var mapView: GMSMapView!
override func viewDidLoad() {
super.viewDidLoad()
let uiView = UIView(frame: CGRect(x: 100, y: 100, width: 150, height: 200))
uiView.backgroundColor = UIColor.yellow
// gesture recognizer
let clickUITapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(self.clickAction(_:)))
uiView.addGestureRecognizer(clickUITapGestureRecognizer)
self.mapView.addSubview(uiView)
}
@IBAction func clickAction(_ sender: Any) {
print ("tap")
}
}
如果它是普通视图,它将完美地工作,但由于它是GMSMapView类,因此出现了错误并且未调用“clickAction”。
(GMSMapView已分配给界面构建器中的视图)
以下是项目:https://gitlab.com/Cerny/googleMapsForwarding
请知道如何解决它?