gpt4 book ai didi

ios - 编辑和滚动时 UITableViewCell 内容不正确

转载 作者:行者123 更新时间:2023-12-01 18:23:07 27 4
gpt4 key购买 nike

不处于编辑模式时,我的 tableview 工作得很好。所有单元格都按预期显示,但如果我进入编辑模式并滚动,在编辑模式下重绘的单元格的内容不正确。在我关闭编辑的函数中,我重新加载表数据,它再次正确显示。

这里是相关代码。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:    (NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:nil];

cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];


FieldItemDecrypted *theField = [decryptedArray objectAtIndex:indexPath.row];




// Configure the cell...

cell.textLabel.text = [[NSString alloc] initWithData:theField.field encoding:NSUTF8StringEncoding];
cell.detailTextLabel.text = [[NSString alloc] initWithData:theField.type encoding:NSUTF8StringEncoding];


return cell;
}

还有我的编辑代码:
- (IBAction)editRows:(id)sender
{

if ([self.tableView isEditing])
{
[self.tableView setEditing:NO animated:YES];
[self.tableView reloadData];
}
else
{
[self.tableView setEditing:YES animated:YES];
}

}

应该是这样的:

enter image description here

但在编辑时滚动后看起来像这样:

enter image description here

最佳答案

您正在初始化 UITableViewCell首先是对象,然后从 TableView 中出列?这是不正确的。

尝试:

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];

if(cell == nil)
{
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];
}

我刚刚在一个演示项目上试过这个,它的行为符合预期。

关于ios - 编辑和滚动时 UITableViewCell 内容不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16026521/

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