这是我的问题:
我有一个模型类数组(比方说,'addressModel'包含字段地址,街道和城市。)。现在我有一个自定义单元格,其中包含三个UITextField,用于模型类中的三个字段。一旦用户结束编辑,我想(验证和)将特定文本字段中的数据添加到相应的模型对象。 (例如:用户结束编辑addressTextField,然后是addressModel.address = addressTextField.text)。
我们如何识别用户选择的文本字段和indexPath.row?在我的情况下,我需要知道两者?有什么帮助吗?
谢谢。
答案 0 :(得分:2)
如果视图控制器实现了UITextFieldDelegate
协议,则可以接收textFieldDidEndEditing
方法调用。在那里,您可以获取用户刚刚编辑的字段的标记。创建单元格时,您可以指定某种整数标记方案,以便您可以反向设计用户当时正在编辑的部分,行和特定字段。你可以这样做:
textField.tag = (indexPath.section * 10000) + (indexPath.row * 100) + (textFieldIndex);
假设每行没有超过100个textField,或每个部分有100行,则此特定方案应该有效。
答案 1 :(得分:0)
您可以在用户完成编辑时验证数据我的意思是您可以在UITextField委托方法中验证数据:
- (void)textFieldDidEndEditing:(UITextField *)textField;
这里不需要找出哪个文本字段被编辑,因为你将获得该textfield。如果你想确定哪一行,那么你可以分配标签,这只是行,文本字段,在此基础上你会知道编辑哪一行文本域。
答案 2 :(得分:0)
设置每个文本字段的单独标记..并在didEndEditing:方法上使用以下代码....
if(textField.teg == FIRST_TAG){
// do your code
}
else if(textField.teg == SECOND_TAG){
// do your code
}...
and soo on....
这可能会对你有帮助......