Итак, две вещи.Во-первых, я понимаю, вы создаете эту ячейку в файле .xib.Установите идентификатор повторного использования для ячейки в IB.Затем вместо этого метода класса CustomCell выгрузите перо в tableView: cellForRowAtIndexPath:, например, так:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
// Assuming you set a reuse identifier "cellId" in the nib for your table view cell...
MyCell *cell = (MyCell *)[tableView dequeueReusableCellWithIdentifier:@"cellId"];
if (!cell) {
// If you didn't get a valid cell reference back, unload a cell from the nib
NSArray *nibArray = [[NSBundle mainBundle] loadNibNamed:@"MyCell" owner:nil options:nil];
for (id obj in nibArray) {
if ([obj isMemberOfClass:[MyCell class]]) {
// Assign cell to obj, and add a target action for the checkmark
cell = (MyCell *)obj;
break;
}
}
}
return cell;
}
Во-вторых, если сначала попытаться удалить многократно используемую ячейку, вы значительно лучшепроизводительность.