All
У меня есть сгруппированный UITableView с возможным общим количеством 3 разделов. Может быть 1, 2 или 3.
Моя проблема заключается в том, что для каждого раздела я использую разные представления верхнего и нижнего колонтитула. Я выбираю, какой колонтитул показывать, проверив раздел #.
Это, очевидно, не работает, так как раздел 0 не всегда представляет то, что показывает заголовок 0.
Пример:
Заголовок # 0 = "Игра в процессе". Но игры не возвращаются из базы данных. Существуют только «Игры закончились». Поэтому в разделе 0 будут все «игры окончены». Я не хочу, чтобы в «Играх закончились» заголовок «Игры в процессе».
Я не могу найти способ проверить значение раздела, а не число.
Проще говоря, я хотел бы показать заголовок раздела № 3 для имени раздела № 3, даже если имя раздела № 3 - это раздел № 0.
Я знаю, что это кажется тривиальным и, вероятно, простым ... но я застрял. Любая помощь приветствуется.
Спасибо.
----- КОД -----
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return [[fetchedResultsController_ sections] count];
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
id <NSFetchedResultsSectionInfo> sectionInfo = [[fetchedResultsController_ sections] objectAtIndex:section];
return [sectionInfo numberOfObjects];
}
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {
if(section == 0)
{
return 50.0f;
}
else if (section == 1)
return 50.0f;
else
return 50.0f;
}
- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section {
if(section == 0 )
{
return 50.0f;
}
else if (section == 1)
return 5.0f;
else
return 80.0f;
}
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
if(section == 0)
{
return headerView1;
}
else if (section == 1)
return headerView2;
else
return headerView3;
}
- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section {
if(section == 0)
{
return footerView1;
}
else if (section == 1)
return footerView2;
else
return footerView3;
}