Один из способов решения этой проблемы - реализовать заголовок раздела следующим образом:
-(NSString*) tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section{
return ([[allData objectForKey:[keys objectAtIndex:section]] count] > 0) ? [keys objectAtIndex:section]:@"";
}
Это просто проверяет, что массив объектов для этого раздела действительно имеет что-то, если он это делает, возвращает имя раздела, если нет, он возвращает пустую строку, которая скрывает заголовок заголовка.
Табличное представление должно быть обновлено, чтобы изменения вступили в силу, также я был словарём, полным массивов и массивом, полным ключей словаря. но что-то подобное можно легко реализовать. Этот метод позволяет вставлять обратно в этот раздел без необходимости повторного создания массива.
Надеюсь, это поможет.