我想将多个静态tableview单元格的高度更改为零&恢复正常。
override func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
if reminderHidden && indexPath.section == 1 && indexPath.row == 1 {
return 0
}
else {
return super.tableView(tableView, heightForRowAtIndexPath: indexPath)
}
}
我可以更新bool值&上述方法适用于隐藏一个静态单元格。但它在返回一个值后停止。我想隐藏两个静电电池&当我改变一个bool值时,让它们恢复正常。
答案 0 :(得分:3)
override func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
if indexPath.row == 1 && toggle.on == false {
return 0.0
}
if indexPath.row == 2 {
if toggle.on == false || pickerVisible == false {
return 0.0
}
return 165.0
}
return 44.0
}
有关更多详细信息,请访问我的博客:
http://blog.apoorvmote.com/how-to-show-and-hide-static-cells-with-uiswitch/
答案 1 :(得分:0)
您需要做的是在该函数中返回0.1。 0是默认值(44px)。 但是,在执行此操作时,您会发现存在许多小问题。如:
我发现更好的解决方案是将(如果可能的话)放入将被隐藏到组中的单元格。然后在数据源中将隐藏时该行的行数设置为0。这种方法仍然存在问题,但不是很多。