Ho un UITableViewCell
che si espande e aggiunge un'etichetta al clic.Animate [tableView reloadData]
Logic:
ho aggiunto un'etichetta
cellForRowAtIndexPath
alla cella selezionata, e indidSelectRow...
I ricaricato tableView. InheightForRow...
la cella selezionata si espande. Spero che tu abbia la foto
In didSelectRow...
Devo ricaricare Dati e non iniziare/fine aggiornamento. Quello che voglio fare è reloadData e farlo animare. Posso fare così:
[UIView transitionWithView: tableView
duration: 0.40f
options: UIViewAnimationOptionTransitionCrossDissolve
animations: ^(void)
{
[self.tableView reloadData];
}
completion: nil
}];
In tal modo una croce si dissolve delle celle che sta cambiando. Quello che voglio è UITableViewRowAnimationTop
, ma a quanto pare non è possibile nelle opzioni di transizione. C'è un modo per reloadData
e utilizzare UITableViewRowAnimationTop
?
Chiamare 'reloadData' distrugge tutte le celle attualmente nella vista tabella e ricostruisce tutto da zero. Forse stai cercando un metodo diverso se questo non è il comportamento che desideri. –
Quindi non c'è modo di usare 'UITableViewRowAnimationTop' con reloadData? –
Hai provato a utilizzare [beginUpdates] (https://developer.apple.com/library/ios/documentation/UIKit/Reference/UITableView_Class/index.html # // apple_ref/occ/instm/UITableView/beginUpdates) e un blocco di aggiornamento? – matt