如何在滚动的 TableView 上方创建一个具有固定 MapKit 的 ViewController?
我正在使用 Storyboards 进行编码,虽然我是一位经验丰富的开发人员,但这是我第一次使用 iOS、XCode 和 Objective-C。我目前有一种可行的方法,但是我当前使用的方法通过将 MapKit 设置为 UITableViewController 内的表视图的部分标题来工作,并且看起来不正确。(它之所以有效,是因为我只有一个部分,当我滚动表格视图时,MapKit 部分将始终是固定的。)
执行此操作的代码如下所示:
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {
return 200.0;
}
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
MKMapView *mapView = [[MKMapView alloc] initWithFrame:CGRectMake(0, 0, self.tableView.frame.size.width, 200)];
return mapView;
}
不幸的是,这样做意味着滚动条出现在地图和表格视图旁边。相反,我希望滚动条与表格视图一样高。
网站上还有其他关于做这样的事情的答案,但没有一个提到滚动条的高度(以及代码的优雅性。)
有任何想法吗?