我在tableview控制器中有一个表单。表单的最后3个部分是地址文本字段,地图和保存按钮。当用户开始在地址字段上键入信息时,uitable视图将向上滑动,覆盖地图以显示不同的结果。当我将子tableview mapTableview的委托和数据源设置为self时,这就是问题开始的时间,屏幕仅显示白色背景。我尝试了其他解决方案,但它们不起作用。也尝试过这种方法,但是数据源必须来自tableview控制器本身。 Dynamic Tableview inside a Static tableview Cell
当我在Datasource类中创建字符串数组并将以下代码放在我的tableview控制器中时,这些字符串将显示在mapTableView中。
var dataSource = DataSource()
mapTableView.delegate = dataSource
maptTableView.delegate = dataSource
但是由于数据源必须来自tableview控制器,所以我尝试将代码以及其他帖子中建议的其他内容放在我的table view控制器中,但是屏幕什么也不会显示,只是全白。而我得到这些错误:
被告知UITableView可以布局其可见的单元格和其他内容,而不必位于视图层次结构中(表视图或其父视图之一尚未添加到窗口中)
检测到一种情况,即约束条件模糊地表明表格视图单元格的内容视图的高度为零。我们考虑的是无意倒塌,而是改用标准高度
extension EditProfileTableViewController {
override func numberOfSections(in tableView: UITableView) -> Int {
return 1
}
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return pois.count
}
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "cellResult", for: indexPath) as! MapTableViewCell
let poi = pois[indexPath.row]
cell.textLabel?.text = poi.title
cell.detailTextLabel?.text = poi.subtitle
cell.detailTextLabel?.numberOfLines = 0
return cell
}
}
在我的viewDidLoad
中tableView.estimatedRowHeight = 60.0;
tableView.rowHeight = UITableView.automaticDimension;
如何正确地将表格视图放入静态表格视图单元中?请帮忙
答案 0 :(得分:0)
MapTableViewController
。Container View
添加到情节提要中的静态单元格中。Table View Controller
添加到该容器视图中,将其类设置为MapTableViewController
。mapTableView
的所有数据源/代理方法从EditProfileTableViewController
放入MapTableViewController
。之后,EditProfileTableViewController
应该根本没有UITableViewDataSource
和UITableViewDelegate
协议方法。