2009-08-16 171 views
-2

当创建表格时,调用cellForRowAtIndexPath来填充单元格。被点击单元格以前当编辑,cellForRowAtIndexPath不叫,并使用电池可能文本输入到它:cellForRowAtIndexPath当表格单元格被点击编辑时调用

#pragma mark Text Field Delegate Methods 
- (void)textFieldDidBeginEditing:(UITextField *)textField 
{ 
self.textFieldBeingEdited = textField; 
} 

现在,当我点击是具有行= 4下面的单元格的细胞,这是键盘顶部的位置,cellForRowAtIndexPath被调用的行数大于导致崩溃的总行数。当我单击单元格0到4时,我可以编辑单元格,并且不调用cellForRowAtIndexPath。以前未调用cellForRowAtIndexPath来单击任何单元格。我改变了一些导致这种情况的东西,但无法弄清楚它是什么。

有没有人知道什么可以导致cellForRowAtIndexPath被点击单元格编辑时被调用?它几乎看起来像它认为正在创建一个新表。

+0

每个单元格包含一个TextField。如果我禁用行> 4的单元格中的TextField,则使用 textField.enabled = NO; 然后当我点击单元格时,cellForRowAtIndexPath不会被调用。奇怪。 – 2009-08-16 08:06:48

回答

1

我想出了问题所在。我在表格中指定了比实际存在的多一行。

1

如果你有这样一行:

[myTable reloadData]; 

在任何地方的代码,它会再打电话的cellForRowAtIndexPath。

相关问题