2

这是我的问题:

我有一个模型类数组(比方说,'addressModel' 具有地址、街道和城市字段。)。现在我有一个自定义单元格,其中包含模型类中三个字段的三个 UITextField。一旦用户结束编辑,我想(验证&)将特定文本字段中的数据添加到相应的模型对象。(例如:用户结束编辑 addressTextField,然后 addressModel.address = addressTextField.text)。

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

谢谢你。

4

3 回答 3

2

如果你的视图控制器实现了UITextFieldDelegate协议,你就可以接收到textFieldDidEndEditing方法调用。在那里,您可以获得用户刚刚编辑的字段的标签。创建单元格时,您可以指定某种整数标记方案,以便您可以对用户当时实际编辑的部分、行和特定字段进行逆向工程。您可以执行以下操作:

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

假设您每行的文本字段不超过 100 个,或者每节不超过 100 行,那么这个特定的方案应该可以工作。

于 2012-07-03T13:16:17.213 回答
0

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

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

在这里无需找出编辑了哪个文本字段,因为您将获得该文本字段。如果您想确定哪一行,那么您可以将除了行之外的标签分配给文本字段,在此基础上您将知道哪一行文本字段被编辑。

于 2012-07-03T13:16:07.663 回答
0

设置每个文本字段的单独标签..并在 didEndEditing: 方法上使用以下代码....

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

 and soo on.... 

这可能会帮助你...

于 2012-07-03T13:29:31.633 回答