在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
在headview上增加点击事件 let tap:UITapGestureRecognizer = UITapGestureRecognizer.init(target: self, action: #selector(headViewClick)) view?.isUserInteractionEnabled = true view?.addGe
1.如何实现cell的Section的展开和收起的效果
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
[self.tableView deselectRowAtIndexPath:indexPath animated:NO];
我们在做项目时,经常遇到UITableView需要展开与收起的情况,类似手机QQ的折叠,而且根据数据的不同判断有多少行需要展开与收起.之前做项目的时候也使用过,最近有时间整理,就把之前是怎么操作的记录下来。
首先,我们先说下思路:
思路:在写代码的时候我们可以很容易的写出cell和setion。但是系统并没有提供记录section状态的方法或是属性。我们需要点击某个section的
主要学习与运行效果
在本节的内容中,我们将通过一个具体实例的实现过程,详细讲解在表视图当中,如何创建一个可展开可收缩的表视图。为了让读者有着更为直观的印象,我们将通过模仿QQ好友列表来实现这个效果。
该示例主要演示:
1.表视图外观设计
2.自定义用户组设计
3.从plist文件中读取数据
4.将数据显示在表视图中
5.实现表格的展开、收缩效果
运行效果如下所示:
表视图外观
最近项目开发中需要设计一个常用问题与解答的业务,一个展示常见问题的UITableView中,通过点击任何一个问题,在问题下方显示该问题的答案。查找一些文章后,都觉得不是特别完美,遂决定自己来写。
核心处理思路:
1. 首次点击UITabeleView时,在 被点击cell 的下方 插入一个 答案cell;
2. 在点击其他cell时,将改cell 用 UITableView的 API移动到
闲了一段时间了,第一次在简书上写文章,试试自己的功底!
之前项目中有用到点击tableviewcell展开下拉菜单内容的功能,刚开始在网上找了好了(本人菜鸟一枚,有写的不好的地方请指出,谢谢),感觉不太适合自己的项目,而且大多代码量都挺大的不是很实用。不过终于在网上找到了一个(现在忘了是哪位大神些的呢,莫怪我!),根据他的思路,我仿照写了一个简单易懂的且实用的展开菜单功能!适合新手学习
clas...
准备,在SB上放一个uitableview,设置布局为全屏,添加一下原型cell用于测试,cell里放一个label,自动布局为上下左三个边距为0,宽度为300
import UIKit
class ViewController: UIViewController,UITableViewDelegate,UITableViewDataSource {
@IBOutlet weak va