GoogleMap iOS Swift上的触摸结束事件
我正在尝试使用UIView在谷歌地图上工作。我的要求是:如果我触摸MapView,其中一个UIView将消失(动画),并且它将一直消失,直到我从MapView中释放触摸。我使用以下代码在触摸地图视图时设法从屏幕上消失UIView:GoogleMap iOS Swift上的触摸结束事件,ios,swift,xcode8,google-maps-sdk-ios,Ios,Swift,Xcode8,Google Maps Sdk Ios,我正在尝试使用UIView在谷歌地图上工作。我的要求是:如果我触摸MapView,其中一个UIView将消失(动画),并且它将一直消失,直到我从MapView中释放触摸。我使用以下代码在触摸地图视图时设法从屏幕上消失UIView: func mapView(_ mapView: GMSMapView, didLongPressAt coordinate: CLLocationCoordinate2D) { self.animate() } func mapView(_ mapView: GM
func mapView(_ mapView: GMSMapView, didLongPressAt
coordinate: CLLocationCoordinate2D) {
self.animate()
}
func mapView(_ mapView: GMSMapView,
idleAt position: GMSCameraPosition) {
self.collapse()
}
func mapView(_ mapView: GMSMapView, idleAt position: GMSCameraPosition) {
//
}
func mapView(_ mapView: GMSMapView, didTapAt coordinate: CLLocationCoordinate2D) {
在拖动地图并释放{Touch-->Drag-->Lift}时,我可以使用idleAt检测手指抬起。但是如果我{Touch-->hold-->Lift},我什么都检测不到。您可以考虑<强> Uber或Ola <强>应用程序MavVIEW(例如:< P>),可以使用GoogLMeppsGMsAppVIEW委托:< /P>
mapView.delegate = self
当谷歌地图开始移动和空闲时,将调用此函数
func mapView(_ mapView: GMSMapView, willMove gesture: Bool) {
//
}
// Touch drag and lift
func mapView(_ mapView: GMSMapView, idleAt position: GMSCameraPosition) {
//
}
// Touch and lift
func mapView(_ mapView: GMSMapView, didTapAt coordinate: CLLocationCoordinate2D) {
print("yes")
}
这没有touchesEnd事件来检测手指何时离开屏幕,以便我可以返回UIView。手指离开屏幕后,“idleAt”将调用。我们已经开发了一个类似优步的应用程序,在这个应用程序中,我们使用“idleAt”来检测touchesEnd。谢谢,idleAt在提升手指时被调用。仅当I{Touch-->Drag-->Lift}时调用它。。不适用于{Touch-->Lift}情况。我需要在这两种情况下都调用它。@VipiNNegi查看我的更新答案。“didTapAt”将在{Touch-->Lift}调用,“idleAt”将在{Touch-->Drag-->Lift}调用。我真傻:(,实际上我在寻找{Touch-->hold-->Lift}而不是{Touch-->Lift},Touch>Lift只是一个简单的点击。