本文具体介绍 : 1.使用协议 2.使用结构体
由于苹果保准UITableView视图的性能,使用了cell重用机制,cell可以通过重用标识符(reusableIdentifier)进行复用,默认的注册cell和获取cell的方法中,需要传入一个字符串作重用标识符. 但这种方式很容易出错,而且使用起来也相当别扭 , 一种普遍的解决方式, 就是直接只用类名作为重用标识符
缺点:
每次都要传入一个类,并且把它转成字符串.所幸,借助Swift泛型特性,我们可以有更加优雅的实现方式 .
使用协议
协议+泛型优化tableView cells的使用体验. 具体做法很简单:
- 声明一个协议,提供并默认实现一个 reuserIdentifier 静态属性
- 然后 : 提供一个注册和获取重用cell的方法 (方法放在UITableView的扩展里)
- 最后 : 自定义cell 只要遵守了Reusable 协议,就可以通过上面两个方法注册和复用cell了
步骤一:
步骤二: