如何解决Swift 5中的用户无法访问UITableViewCell中的MKMapView
我将MKMapView嵌入到UITableViewCell中,效果很好。不幸的是,该地图无法使用,例如缩放,滚动或点击。甚至连来自Apple的合法链接也无法窃听。
欢迎任何建议。
let cell = UITableViewCell(style: .default,reuseIdentifier: "locationDetailMapCell")
let mapView = MKMapView()
mapView.frame = CGRect(x: 0,y: 0,width: view.frame.size.width,height: 400)
mapView.mapType = .standard
mapView.showsUserLocation = true
mapView.isZoomEnabled = true
mapView.isScrollEnabled = true
mapView.setRegion(MKCoordinateRegion(center: CLLocationCoordinate2D(latitude: CLLocationdegrees(currentLocation.latitude),longitude: CLLocationdegrees(currentLocation.longitude)),span: MKCoordinateSpan(latitudeDelta: 0.02,longitudeDelta: 0.02)),animated: true)
let pin = MKPointAnnotation()
pin.coordinate = CLLocationCoordinate2D(latitude: CLLocationdegrees(currentLocation.latitude),longitude: CLLocationdegrees(currentLocation.longitude))
mapView.addAnnotation(pin)
cell.addSubview(mapView)
return cell
解决方法
您应该将mapView添加到单元格的contentView
中,而不是直接作为单元格的子视图。
cell.contentView.addSubview(mapView)
,
我认为这是多个手势识别器的问题。滚动视图(TableView)和MKMapView。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。