gpt4 book ai didi

ios - UItableView Cell Resuablity 数据在滚动时被交换

转载 作者:行者123 更新时间:2023-11-28 20:08:06 30 4
gpt4 key购买 nike

Grouped TableView with 4 rows in each Section

大家好,

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

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

UITextField *textField = [[UITextField alloc] initWithFrame:CGRectMake(10, 5, 200, 30)];
textField.tag = 123;
textField.placeholder = @"Enter Text";
textField.autocorrectionType = UITextAutocorrectionTypeNo;
textField.delegate = self;
[cell.contentView addSubview:textField];

}

UITextField *textField = (UITextField *) [cell.contentView viewWithTag:123];
if (indexPath.row == 0) {
[textField setPlaceholder:@"Employee ID"];
}
else if (indexPath.row == 1)
{
[textField setPlaceholder:@"Employee Name"];
}
else if (indexPath.row == 2)
{
[textField setPlaceholder:@"Employee Phone"];
}
if (indexPath.row == 3)
{
[textField setPlaceholder:@"Employee Email"];
UIButton *saveButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[saveButton setFrame:CGRectMake(200, 0, 100, 40)];
[saveButton setTitle:@"Save Emp" forState:UIControlStateNormal];
[saveButton addTarget:self action:@selector(saveEmployeeToCoreData:) forControlEvents:UIControlEventTouchUpInside];
[saveButton setTag:indexPath.section];
[cell addSubview:saveButton];
}

return cell;
}

大家好,我正在使用这段代码来获得上面的输出但是当我滚动表格 View 时,我得到的输出是

when i am scrolling the tableview the output i am getting

如果我在该部分中输入任何文本并滚动文本,那么单元格中的文本就会发生变化。

最佳答案

在其中一种情况下,您正在向单元格添加 subview :

[cell addSubview:saveButton];

当您将旧单元格出列时,此 subview 不会被删除。对于这些情况,您必须明确删除 subview 。这将导致意外行为。

我真的建议继承 UITableViewCell 并将组件添加到该子类。通过这样做,您可以在不需要保存按钮的情况下隐藏其保存按钮属性。

关于ios - UItableView Cell Resuablity 数据在滚动时被交换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21303936/

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