计算tableView中的节数

时间:2014-06-19 07:33:20

标签: ios objective-c uitableview

我希望将tableView的各个部分显示为徽章。

第一个问题是我的结果是0。

我在TableViewController.h中将int声明为section

在.m文件中:

- (void)viewDidAppear:(BOOL)animated
{
    self.section = [self.tableView numberOfSections];
    NSLog(@"Number of sections in tableView are %d", self.section);
}

为什么我仍然得到0作为结果? numberOfSectionsInTableView中是否有某处需要计算部分数量?

由于


更新

在tableView中我设置了scheduledLocalNotifications。 我制作了一组2个相互关联的通知。 每个部分中有2行scheduledLocalNotifications

这就是我在tableView中的内容:

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
    return (int)[[[UIApplication sharedApplication] scheduledLocalNotifications] count]/2;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    // Return the number of rows in the section.
    return 2;
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
    }

    // Configure the cell...
    int rowIndex = (indexPath.section*2) + indexPath.row;

    // Get list of local notifications
    NSArray *localNotifications = [[UIApplication sharedApplication] scheduledLocalNotifications];
    UILocalNotification *localNotification = [localNotifications objectAtIndex:rowIndex];


    return cell;
} 

1 个答案:

答案 0 :(得分:2)

numberOfSectionsInTableView方法调用之后,您可以在任何tableview中找到多个部分。因此,在return语句之前在numberOfSectionsInTableView方法中初始化变量。