为什么我的应用没有显示预期的行数?我正在测试我的tableView,它完美地显示了部分标题和部分中的预期行,但仅限于从开关循环中包含的文本填充。 在这种情况下,我使用固定的部分和章节标题:
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
return 6;
}
+ (NSString*) titleForHeaderForSection:(int) section
{
switch (section)
{
case 0 : return @"Overdue";
case 1 : return @"Today";
case 2 : return @"Tomorrow";
case 3 : return @"Upcoming";
case 4 : return @"Someday";
case 5 : return @"Completed";
//default : return [NSString stringWithFormat:@"Section no. %i",section + 1];
}
}
- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section
{
return [CollapsableTableViewViewController titleForHeaderForSection:section];
}
在case 2
部分(明天),预期的行数应为3,然后核心数据存储中有三个对象。但结果是0.这是使用过的代码:
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
int numero = [[self.fetchedResultsController sections] count];
NSLog(@"numero = %d", numero);
switch (section)
{
case 2 : return numero;
case 3 : return 30;
default : return 8;
}
}
这是用于演示它的模拟器截图(无效明天部分):
答案 0 :(得分:0)
问题在于你的方法。
目前你返回的是节数而不是节中的行数;)你忘了objectAtIndex:section
你必须使用:
[[[self.fetchedResultsController sections] objectAtIndex:section] count];
享受!