2009-08-16 76 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。

相關問題