版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/bitcser/article/details/78493543
在headview上增加点击事件
let tap:UITapGestureRecognizer = UITapGestureRecognizer.init(target: self, action: #selector(headViewClick))
view?.isUserInteractionEnabled = true
view?.addGestureRecognizer(tap)
写一个全局的标识,点击之后切换展开、收起状态,并刷新对应section,添加展开收起动画
@objc func headViewClick() -> Void {
if showAll {
showAll = false
}else{
showAll = true
}
let set:IndexSet = IndexSet.init(integer: 0)
tableView.reloadSections(set as IndexSet, with: UITableViewRowAnimation.fade)
}
在返回rowd个数的方法里根据标识判断,就完成了
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
if showAll {
return 8
}else{
return 0
}
}
效果如下