0
セル上のボタンをクリックすることで、uitableview内のセルの配列を展開して折りたたみたいと思います。私は、クリックしたセルだけでなく、後続の子セルを拡大または縮小したくない。また、配列内の項目だけを展開して折りたたみたい。Expand/Collapse UITableView内のセルの配列
現在、次のコードがありますが、セルを更新することについては何もしません。
私は間違っていますか?
- (void)reloadTableView:(UITableView *)tableView
{
NSArray *itemsArray = self.childItems;
NSMutableArray *insertPath = [NSMutableArray array];
NSMutableArray *deletePath = [NSMutableArray array];
[itemsArray enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
if (![itemsArray containsObject:obj]) {
[insertPath addObject:[NSIndexPath indexPathForRow:idx inSection:0]];
}
}];
[itemsArray enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
if ([itemsArray containsObject:obj]) {
[deletePath addObject:[NSIndexPath indexPathForRow:idx inSection:0]];
}
}];
if ([insertPath count] || [deletePath count]) {
[tableView beginUpdates];
if ([deletePath count]) {
[tableView reloadRowsAtIndexPaths:deletePath withRowAnimation:UITableViewRowAnimationFade];
}
if ([insertPath count]) {
[tableView reloadRowsAtIndexPaths:insertPath withRowAnimation:UITableViewRowAnimationFade];
}
[tableView endUpdates];
}
else {
[tableView reloadData];
}
}
ありがとうございましたmaddy ...しかし、私はいつもセクションの行数が無効です。 – lifemoveson
テーブルビューを更新する前に、テーブルビューのデータソースを更新する必要があります。 – rmaddy
あなたはremoveObjectAtIndexを追加することを意味しますか? – lifemoveson