Я знаю, что это старый вопрос, и это не ответ на ваш вопрос, а предложение улучшить ваш код, чтобы другие могли извлечь выгоду.
Вы могли бы написать это:
if (indexPath.row >= 4 && indexPath.row <= 8) { // 4 and 8 inclusive
cell.indentationLevel = 2;
}
cell.textLabel.text = @"";
Вместо этого:
if(indexPath.row == 0){
cell.textLabel.text = @"";
}else if(indexPath.row == 1){
cell.textLabel.text = @"";
}else if(indexPath.row == 2){
cell.textLabel.text = @"";
}else if(indexPath.row == 3){
cell.textLabel.text = @"";
}else if(indexPath.row == 4){
cell.indentationLevel = 2;
cell.textLabel.text = @"";
}else if(indexPath.row == 5){
cell.indentationLevel = 2;
cell.textLabel.text = @"";
}else if(indexPath.row == 6){
cell.indentationLevel = 2;
cell.textLabel.text = @"";
}else if(indexPath.row == 7){
cell.indentationLevel = 2;
cell.textLabel.text = @"";
}else if(indexPath.row == 8){
cell.indentationLevel = 2;
cell.textLabel.text = @"";
}else if(indexPath.row == 9){
cell.textLabel.text = @"";
}else if(indexPath.row == 10){
cell.textLabel.text = @"";
}else if(indexPath.row == 11){
cell.textLabel.text = @"";
}else if(indexPath.row == 12){
cell.textLabel.text = @"";
}else if(indexPath.row == 13){
cell.textLabel.text = @"";
}else if(indexPath.row == 14){
cell.textLabel.text = @"";
}else if(indexPath.row == 15){
cell.textLabel.text = @"";
}else if(indexPath.row == 16){
cell.textLabel.text = @"";
}else if(indexPath.row == 17){
cell.textLabel.text = @"";
}else if(indexPath.row == 18){
cell.textLabel.text = @"";
}
И если у вас есть разный текст для каждого случая, вы можете использовать:
switch (indexPath.row) {
case 0:
cell.textLabel.text = @"";
break;
...
case 18:
cell.textLabel.text = @"";
default:
break;
}
Или даже лучше поместить все в NSArray
(база данных ...) и просто просмотреть их по индексу.