#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;
Не могли бы вы привести пример?