我已经实现了一个可折叠的UITableView
部分,当部分折叠时,部分标题的动画出现问题。
您可以看到奇怪的动画In this YouTube video...
我用慢动画录制了这个,以使故障更加明显。
切换该部分的代码如下......
- (void)toggleCollapsedSection:(NSInteger)section {
VenueDetailsSection *sectionDetails = self.venue.detailsSections[section - 1];
// the collapsed bool toggles returning 0 for the numberOfRowsInSection method
sectionDetails.collapsed = !sectionDetails.isCollapsed;
[self.tableView beginUpdates];
NSMutableArray *indexPaths = [NSMutableArray array];
for (int i=0 ; i<sectionDetails.details.count ; ++i) {
[indexPaths addObject:[NSIndexPath indexPathForRow:i inSection:section]];
}
if (sectionDetails.isCollapsed) {
[self.tableView deleteRowsAtIndexPaths:indexPaths withRowAnimation:UITableViewRowAnimationTop];
} else {
[self.tableView insertRowsAtIndexPaths:indexPaths withRowAnimation:UITableViewRowAnimationTop];
}
[self.tableView endUpdates];
}
查看Apple的示例应用程序,这与他们的代码完全相同,除了在他们的应用程序中,他们只允许一次扩展一个部分。
无论如何,有谁知道如何阻止那个奇怪的节头动画?
我不知道这是否相关,但我使用的是UITableViewHeaderFooterView
部分标题,这也是他们在Apple示例应用中所做的事情。