Ios 如何在滚动期间保留uitextfield的值

Ios 如何在滚动期间保留uitextfield的值,ios,cocoa-touch,uitableview,Ios,Cocoa Touch,Uitableview,我在使用tableview中的出列机制时遇到问题,我有一个带有uiTextField的自定义单元格。 当用户在其上输入一些值并进行滚动时,TextField的值将转到另一个单元格。 有人能帮我吗? 谢谢各位。 代码如下: - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *CellIdentifier

我在使用tableview中的出列机制时遇到问题,我有一个带有uiTextField的自定义单元格。 当用户在其上输入一些值并进行滚动时,TextField的值将转到另一个单元格。 有人能帮我吗? 谢谢各位。 代码如下:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
  static NSString *CellIdentifier = @"MyPedidoItemCell";

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

  // Configure the cell...
  if (!cell) {
    cell = [[PedidoItemCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
  }

  Produto *produto = [self.fetchedResultsController objectAtIndexPath:indexPath];

  cell.lblNome.text   = produto.nome;
  cell.lblCodigo.text = produto.codigo;
  cell.lblFuncao.text = produto.funcao;
  return cell;
}

您显示的代码使用CoreData加载单元格的数据,但您提到您没有将数据存储在任何位置。

我怀疑您从
fetchedResultsController
获取的对象没有数据,因为您没有存储任何数据

所以很可能
produto
是nil,并且您没有在单元格上设置任何值

最终,您手动更新的单元格将被重用,您将再次看到文本


您需要首先将键入的数据存储到UITextField中,然后才能从核心数据中检索数据。

当您调用
dequeueReusableCellWithIdentifier
时,它可能返回一个已滚动出视图但仍包含UITextField中数据的单元格。如果不清除UITextField的内容或将其设置为行的正确值,则可能会看到不需要的数据。

我会责怪您的cellForRowAtIndexPath方法。但是你没有发布任何代码,所以谁知道呢。当用户在自定义单元格的文本字段中输入内容时,你是否将该文本存储在任何位置?不,我不会将其存储在任何位置。你能发布PeidoItemCell和Produto的定义吗?哪个UITextField的数据错误?单元格的数量可能不同。因此,我不能使用静态单元格。数据来自一个表。