Iphone 标识多个UITextField和行索引

Iphone 标识多个UITextField和行索引,iphone,xcode,uitableview,uitextfield,Iphone,Xcode,Uitableview,Uitextfield,我的问题是: 我有一个模型类数组(比如说,'addressModel'带有字段address、street和city)。现在我有了一个自定义单元格,其中有三个UITextFields,用于模型类中的三个字段。一旦用户结束editin,我想(validate&)将特定文本字段中的数据添加到相应的模型对象中。(例如:用户结束编辑addressTextField,然后是addressModel.address=addressTextField.text) 如何识别用户选择的文本字段和indexPath

我的问题是:

我有一个模型类数组(比如说,'addressModel'带有字段address、street和city)。现在我有了一个自定义单元格,其中有三个UITextFields,用于模型类中的三个字段。一旦用户结束editin,我想(validate&)将特定文本字段中的数据添加到相应的模型对象中。(例如:用户结束编辑addressTextField,然后是addressModel.address=addressTextField.text)

如何识别用户选择的文本字段和indexPath.row?就我而言,我需要两者都知道吗?有什么帮助吗


谢谢。

用户完成编辑后,您可以验证数据。我的意思是,您可以在UITextField委托方法中验证数据:

- (void)textFieldDidEndEditing:(UITextField *)textField;

这里不需要找出编辑了哪个textfield,因为您将获得该textfield。如果您想识别哪一行,那么您可以将只不过是行的标记分配给textfield,并在此基础上,您将知道编辑了哪一行textfield。

如果您的视图控制器实现了
UITextFieldDelegate
协议,您可以接收
textfielddidediting
方法调用。在那里,您可以获得用户刚刚编辑的字段的标记。创建单元格时,可以指定某种整数标记方案,以便对用户当时实际编辑的节、行和特定字段进行反向工程。你可以这样做:

textField.tag = (indexPath.section * 10000) + (indexPath.row * 100) + (textFieldIndex);

假设每行文本字段数不超过100行,或每节文本字段数不超过100行,则此特定方案应有效。

设置每个文本字段的单独标记。。关于didEndEditing:方法使用以下代码

  if(textField.teg == FIRST_TAG){
      // do your code
  }
  else if(textField.teg == SECOND_TAG){
         // do your code
 }...

 and soo on.... 

希望这能帮助您……

嗨,丹,谢谢您的快速回复。我早就想到了,但我们还有别的办法吗?在上述逻辑中,第一行(第0行)将是1,2等?(其中1=第一个文本字段的标记,依此类推)节和行是0索引的,只要您在创建它们时遵循相同的约定,并且“解码”标记,就无所谓了。