2013-10-10 16 views
5

Nach einer UITableViewCell Auswahl IWie zu erkennen, wenn Animation deaktivieren auf UITableViewCell Zeile vervollständigt

[tableView deselectRowAtIndexPath:indexPath animated:YES]

innen tableView:didSelectRowAtIndexPath:

nennen. Ich würde gerne wissen, ob es irgendeinen Weg gibt zu erkennen, wann diese Animation abgeschlossen ist.

+2

Ich würde versuchen, diese Aussage in einem 'CATransaction' mit einem Abschluss Block Umwickeln wie in [diese Frage] beschrieben (http://stackoverflow.com/questions/3832474/uitableview-row-animation-duration-and -Komplett-Rückruf). –

Antwort

8
[CATransaction begin]; 

[tableView beginUpdates]; 

[CATransaction setCompletionBlock: ^{ 

    NSLog(@"Completion code here"); 

}]; 

[tableView deselectRowAtIndexPath:indexPath animated:YES]; 
[tableView endUpdates]; 

[CATransaction commit]; 
+2

Danke für die Antwort. Zukünftige Zuschauer - ich glaube nicht, dass die Aufrufe 'beginUpdates' und 'endUpdates' in diesem speziellen Beispiel unbedingt notwendig sind. Diese Methoden werden verwendet, um mehrere Aktionen in einer einzelnen Animation zusammenzufassen, aber da dieses Beispiel nur eine Abwahl-Aktion hat, könnten Sie sie auch hier lassen. – Matt

Verwandte Themen