下面的创建cell的样式(subTitle),要求必须注册否则程序会崩溃.
这三种写法都是可以正常运行的,且cell都是循环利用的,主要思路就是:如果缓存池中有cell,就从缓存池取出cell来重用
可以避免对象销毁和创建所需要的时间和空间成本,优化程序性能.
1>dequeueReusableCellWithIdentifier,这个方法的意思是先去缓存池中取得对应类型的cell,结过为空代表缓存池中没有对应类型的cell
需要手动创建,
需要注意的就是:注册这个操作的意义,
2>可以根据注册的cell类型在缓存池找到对应的cell来重用,比如cell有两种类型default和subTitle,因为两种cell的显示是不同的,
根据注册的类型就可以准确的找到需要的cell
3>如果缓存池中没有可以重用的cell,如果注册过cell,系统会自动创建对应类型的cell,不需要手动创建.且注册后的cell是重复利用的
可以通过打印cell地址来观察.
4>如果没有注册cell,也没有去缓存池中取cell来重用,每一次都是新创建的cell就会有性能问题
5>如果单单去缓存池中取cell,却没有注册该cell是危险的,因为缓存池中可能会有多种不同类型的cell,就会造成你取到的cell类型
不是你需要的cell类型.