2010-09-19 3 views
3

Я хотел бы, чтобы мой заголовок раздела отображал сумму значений в моих строках. поэтому реализовать:Обновить значения для UILabel, помещенного в заголовок секции UITableViews

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section 

функции делегата и место UILabel в настраиваемое представление я строю здесь.

Если бы это был UITableViewCell, я бы построил ячейку, если она не существует, а затем обновите ее или если она существует - только обновите ее.

Я не знаю, какой «шаблон» использовать для обновления заголовка раздела. Либо есть «правильный путь» в UITableView, но я не могу найти «updateSectionHeaderForSection» и вызывать это только тогда, когда меняю значение строки.

озадачивает меня, как UITableView сделки с заголовками, это называют viewForHeadersInSection только один раз на reloadData/конкретизации или же его называет все это время, то есть это экземпляр вида повторно при прокрутке если поместить этот код в ViewController ?:

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section { 

     UIImageView *shadow = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"topbar.png"]]; 

} 

И как я заставляю заголовок раздела, чтобы обновить представление, как вызов updateRowsAtIndexPaths, когда я изменил значение должно отображаться?

Я не могу найти, чтобы найти Яблоки в этом руководстве по программированию UITableView.

Заранее благодарю за предоставленную помощь.

ответ

0

В последнее время мне пришлось сделать подобное, так как я сделал это, чтобы нарисовать пользовательский вид в viewForHeaderInSection. Эта точка зрения содержится ряд различных компонентов и для лейбла, что я хотел, чтобы показать общее в Я дал ему тег

detailLabel.tag=100001; 

Тогда, когда я хотел обновить в общей сложности я извлечения связанного представления

UILabel *total = (UILabel*)[self.view viewWithTag:100001]; 

и обновить его до значения Я хотел:

total.text = @"1234"; 
+0

Привет Лиам и спасибо. Я нашел методы делегата, которые вызываются после [tableView endUpdates], один из них - tableView: viewForHeaderInSection: к счастью, код, выполняемый, когда мне нужно обновить общее количество, находится в начале/endUpdates, поэтому я сделал это, как вы предлагаете выше :) – RickiG

Смежные вопросы