作为tableviewcontroller的一部分,我的项目中有一个可扩展的tableview。问题在于,当不展开表时,单元格的其余部分仍会显示,与下一个单元格重叠。我用来创建可扩展表的方法来自本教程:https://dev.to/lawgimenez/implementing-the-expandable-cell-in-ios-uitableview-f7j
我认为他们改变了一些东西,因为这段代码是用旧版本的xcode和swift编写的。
我尝试更改单元格和tableview的某些属性,但到目前为止没有任何效果。
override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
tableViewData[indexPath.row].opened = !tableViewData[indexPath.row].opened
tableView.reloadData()
}
override func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
if tableViewData[indexPath.row].opened == true {
return 99.5
}
else {
return 40.5
}
}
我希望表格视图中的单元格在表格视图中的单元格的确切高度处切断自定义单元格,但是当未展开时,该单元格很小,但是所有自定义单元格都被显示出来,并且从指定区域溢出单元格。
答案 0 :(得分:0)
您应该使用
select coalesce(country, continent), count(*) as Total
from places
group by grouping sets ( (country), (continent), () )
order by (grouping(country) + grouping(continent)) desc, min(continent), grouping(continent);
代替
tableView.reloadRows(at: [indexPath], with: .automatic)
另一件事,您应该使用
tableView.reloadData()
代替
if tableViewData[indexPath.row].opened {
}