Подсчет количества разделов в TableView

#ios #objective-c #uitableview

#iOS #objective-c #uitableview

Вопрос:

Я хочу показать количество разделов в TableView где-нибудь в виде значка.

Первая проблема заключается в том, что я получаю результат 0.

Я объявил a int в TableViewController.h как 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. Я думаю, вы динамически настраиваете разделы tableview в соответствии с ответом от webservice. если это так, то после анализа данных .. Вы можете сохранить значение количества разделов, которое хотите передать в метод делегирования NumberOfSections, в переменной и установить его как значок..

Ответ №1:

Вы можете найти количество разделов в любом tableview после numberOfSectionsInTableView вызова метода. Итак, инициализируйте свою переменную в numberOfSectionsInTableView методе перед операцией return.

Комментарии:

1. Не уверен, что вы имеете в виду. У меня есть несколько scheduledLocalNotification, которые загружаются в табличное представление. return (int)[[[UIApplication sharedApplication] scheduledLocalNotifications] count]/2; Не могли бы вы привести пример?