我有一个普通的视图控制器,其中包含一个tableview
对象。我已经将viewcontroller扩展为使用UITableViewDataSource
和UITableViewDelegate
我的tableview
允许多项选择,并且我能够跟踪在tableView.indexPathsForSelectedRows.count
方法中使用willSelectRowAt()
选择的行数
我正在tableview
方法中设置viewForHeaderInSection()
标题。但是,似乎没有办法将两者链接起来,以使标题取决于所选的行数
例如
如果tableView.indexPathsForSelectedRows.count <1,标题= Hello
如果tableView.indexPathsForSelectedRows.count = 2,标题=早上好
等
谢谢
答案 0 :(得分:0)
您需要使用正确的视图来实现
func tableView(_ tableView: UITableView,
viewForHeaderInSection section: Int) -> UIView? { --- }
func tableView(_ tableView: UITableView,
willSelectRowAt indexPath: IndexPath) -> IndexPath? {
if let header = tableview.headerView(forSection:indexPath.section) as? YourCustomHeader {
// here update the model with the new header name to avoid dequeuing problems
header.yourLbl.text = "" // change here according to any logic
}
}
---带有titleForHeaderAt
if let header = tableview.headerView(forSection:indexPath.section) {
// here update the model with the new header name to avoid dequeuing problems
header.textLabel.text = "" // change here according to any logic
}