我的tableview中有动态数量的文本字段,我将每个文本字段放入IB中的自定义单元格并通过nibName加载单元格。
我希望在用户输入数据时验证并显示警报,同时在editisDone时我想从用户获取输入值并将其保存到relavent对象。
例如,这些是我可以使用的一些委托方法:
- (void)textFieldDidEndEditing:(UITextField *)textField{
//save the data
}
- (IBAction)textFieldDoneEditing:(id)sender {
//hide the keypad when done is pressed
[sender resignFirstResponder];
}
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange{}
2个问题:
1 - 当获得用户输入并验证输入时,我将如何知道哪个文本字段的委托被触发,因为有动态数量的单元格和文本字段,我该如何管理它?
2 - 为了隐藏键盘我做了这个,但不确定这是否正确; - 在IB中我打开了customcell - >右键单击uitextfield并将其didEndonExit连接到 FirstResponder 的textFieldDoneEditing方法。这有效,但如果我没有添加任何字符到textfield,我就无法返回。所以它强迫写点什么才能按下按钮。
答案 0 :(得分:7)
关于你的第一个问题......
在下面的代码中,我假设每个单元格中有一个UITextField
。我还假设您创建了一个名为UITableViewCell
的{{1}}子类,其中包含CustomCell
。
UITextField
答案 1 :(得分:5)
关于你的第二个问题;如果我正确理解您的问题,取消选中IB中文本字段属性中的“自动启用返回键”应该允许您按下返回按钮,即使它是空的。我在UIView中的一个简单的文本字段中对此进行了测试,但它应该适用于您的情况。