如何从UITextField获取UITableViewCell的索引?

Jam*_*las 4 xcode objective-c ios ios6

我在表中的自定义单元格中有一个UITextField.我创建了新类DataCell,它是UITableViewCell的子类.在DataCell内部,我为textfields创建了出口,我在实现文件中也有方法,它使用'editing did end'并在那里操作textField值.

我现在想知道如何获取rowIndex或单元格的数量,因为每次单击+按钮时,新的自定义单元格都会加载到表格中.如果我得到标签,无论我选择哪个单元格,我都会得到相同的标签号.

Mun*_*ndi 11

传递给您的委托的文本字段是单元格的子视图contentView.

UITableViewCell *cell = (UITableViewCell*) textField.superview.superview; 
NSIndexPath *indexPath = [self.tableView indexPathForCell:cell]; 
Run Code Online (Sandbox Code Playgroud)

  • 它非常脆弱:你依赖于文本字段总是a)存在的事实,b)被绑定到超级视图,c)反过来,与细胞相关联.虽然,它适用于这种情况.你是对的. (4认同)
  • 脆弱的意思是,如果单元格的视图层次结构发生变化,它就会破坏 (2认同)
  • 你的DataCell类*不应该关心它是什么索引路径!此代码应位于表视图控制器中. (2认同)