2013-01-03 6 views
6

Occasionalmente ho una sezione del mio UITableView dove non ci sono celle contenute in quella sezione. In tal caso, quindi, ci sono due intestazioni una sopra l'altra poiché non ci sono celle nella sezione superiore. Sto cercando di capire come nascondere temporaneamente quell'intestazione superiore e poi farlo riapparire quando torno alla pagina dopo.Come nascondere l'intestazione di UITableView e poi riappare?

Posso restituire zero per -(CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section e quindi forzarlo per essere richiamato di nuovo in viewWillAppear in qualche modo ??

Inoltre, se ricarico i dati utilizzando [self.tableView reloadData], come si restituisce l'altezza standard per un'intestazione UITableView?

risposta

13

Quando si ha da nascondere intestazione

[tableView setContentOffset:CGPointMake(0, 44) animated:YES]; 

Quando si deve mostrare intestazione

[tableView setContentOffset:CGPointMake(0, 0) animated:YES]; 
+0

come si può fare l'intestazione sparire su viewDidLoad? – Petar

+0

'[tableView setContentOffset: CGPointMake (0, 44) animato: YES];' –

+1

non funziona su 'viewDidLoad' – Petar

Problemi correlati