就像这样,cell 可以覆盖 MKMapView。当表格向下滚动时,可以触摸 MKMapView。
如何?特别感谢
1.为表格视图添加标题视图,高度为320px,背景颜色清晰。
2.将MKMapView放在UITableView下。
3.覆盖表视图的hitTest:withEvent:
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event
{
UIView *view = [super hitTest:point withEvent:event];
if (view == self.tableHeaderView) {
return nil;
}
return view;
}
将您的图像放在背景中或至少在您的表格视图后面。然后将第一行的大小(或您喜欢的标题)设置为大的:可能是 350 像素。将 tableview 的 backgroundColor 设置为 [UIColor clearColor] 并将第一个单元格的 backgroundColor 设置为 [UIColor clearColor] 。您可能需要特别注意视图的 opaque 属性:tableView 和单元格
这是 OpenThread 答案的 Swift 3 版本,但它不需要您向您的文件中添加标头UITableView
- 只需对其进行子类化并添加以下内容:
class YourTableView: UITableView {
override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
let view = super.hitTest(point, with: event)
if view is YourTableView {
return nil
}
return view
}
}