1. 使用系统的UItableViewCell
倘若在创建UITableView的时候注册cell ,可能会造成在第一个cell复用的地址不相同(也就是没有达到复用的目的),这个情况是偶现的,我现在也测试不出来了/(ㄒoㄒ)/~~
2. 自定义的UITableViewCell
如下写法会造成cell第一次复用的地址与初始化的地址不同从而达不到复用的目的
如下写法可以正常的复用cell(自定义的cell含有下载进度条,为了避免出现在进度条更新的过程中滑动cell,出现复用(更新进度条的cell)导致新展示cell的进度条也随之更新)
3. dequeueReusableCellWithIdentifier:和dequeueReusableCellWithIdentifier:forIndexPath:的区别!!
如果你注册过Cell,在没有可用的cell时,前者会返回nil;而后者永远都会从注册的nib或者class中替你创建一个可用的Cell。也就是说,前者调用你需要手动检查nil,而后者不需要;
如果你从没有注册过cell,在没有可用的cell时,前者会返回nil,后者……直接崩溃!也就是说,调用后者你必须确保注册过cell。