У меня есть табличное представление с ячейками, которые можно удалить. При удалении ячейки я хотел бы отобразить анимацию удаления, например UITableViewRowAnimationFade
. Проблема заключается в том, что ячейки моего табличного представления имеют чередующиеся цвета фона, поэтому мне нужно -reloadData
после завершения анимации, чтобы исправить цвета всех ячеек ниже удаленной ячейки.
Итак, если вы не читали это далеко, мне нужен способ запустить некоторый код после завершения анимации табличного представления. В настоящее время я использую performSelector:withObject:afterDelay:
и жестко кодирую приближение задержки анимации. Этот метод работает, но должен быть лучший способ сделать это:
NSIndexPath * path = [listTable indexPathForCell:deletingCell];
NSArray * indexPaths = [NSArray arrayWithObject:path];
[listTable deleteRowsAtIndexPaths:indexPaths withRowAnimation:UITableViewRowAnimationFade];
[listTable performSelector:@selector(reloadData) withObject:nil afterDelay:0.35];
В этом случае я предполагаю, что UITableViewRowAnimationFade
займет менее 0,35 секунды.