gpt4 book ai didi

ios - 如果我插入或删除行,UITableView 部分标题会消失

转载 作者:IT王子 更新时间:2023-10-29 07:59:09 25 4
gpt4 key购买 nike

我有一个包含 4 个部分的 UITableView。其中三个部分具有标题 View 。

header View 是一个 UITableViewCell,我在 viewForHeaderInSection: 委托(delegate)中将其作为普通单元格出队。

如果我从任何部分插入或删除一行,其他 tableview 标题单元格就会消失。

我假设这与单元格重用有关,但是单元格最初都出现在屏幕上(所有三个标题同时出现在屏幕上)。

我试过在插入或删除后重新加载其他部分,但这没有帮助。

这是一些代码:

- (UIView*)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {

switch (section) {

case kSectionCardInformation:
case kSectionContactInformation:
case kSectionTags: {

static NSString *CellIdentifier = @"EditContactHeaderCell";
EditContactHeaderCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
return cell;
}

default:
return nil;
}
}

这里是我删除相关部分中的行的地方:

- (void)deleteTag:(CDTag *)tag {

[self.tableView beginUpdates];

NSMutableArray *objects = [self.sections objectAtIndex:kSectionTags];
if ([objects containsObject:tag]) {
NSIndexPath *indexPath = [NSIndexPath indexPathForRow:[objects indexOfObject:tag] inSection:kSectionTags];
[objects removeObject:tag];

[self.tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationMiddle];

[self.contact deleteTag:tag];
}

[self.tableView endUpdates];
}

任何帮助,不胜感激。

最佳答案

只需将 UITableViewCell 包装到 UIView 中即可。

- (UIView*)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {

switch (section) {

case kSectionCardInformation:
case kSectionContactInformation:
case kSectionTags: {

static NSString *CellIdentifier = @"EditContactHeaderCell";
EditContactHeaderCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
UIView * view = [[[UIView alloc] init] autorelease];
[view addSubview:cell];
//setup the view's frame: fixed, autolayout, ...
return view;
}

default:
return nil;
}

关于ios - 如果我插入或删除行,UITableView 部分标题会消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23424951/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com