商業轉載請聯繫作者獲得授權,非商業轉載請註明出處。
作者:Joshua Shen
鏈接:https://www.zhihu.com/question/28287313/answer/40225457
來源:知乎
iOS6新增了這個方法
dequeueReusableCellWithIdentifier:forIndexPath:
而以前是這個
dequeueReusableCellWithIdentifier:
static NSString *ID = @"cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:ID];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:ID];
}
static NSString *ID = @"cell";
[self.tableView registerClass:[MyCell class] forCellReuseIdentifier:ID];
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:ID forIndexPath:indexPath];
區別在於之前的寫法取出重用cell的時候可能是空的
而後來的寫法如果取出空的那就自動創建一個新的 register就是告訴它創建個什麼樣的