我如何在一个地方从UITextField收集sent events
,或者我是否被迫为我打算使用的每一个事件创建出口和行动?
答案 0 :(得分:1)
如果我正确地得到了您的问题,那么当UITextField松散焦点(用户点击其他地方)时,您需要从UITextField获取文本。为此,您需要:
在yourClassName.m文件中实现此方法:
- (void)textFieldDidEndEditing:(UITextField *)textField {
NSString *someStringOrWhateverYouNeed = textField.text;
}
任何时候用户按下键盘上的返回按钮,您的课程都会收到通知并调用此方法。
如果您需要从多个UITextField收集事件,您可以使用特定标记标记所有textField,并创建一个这样的IBAction:
- (IBAction)getTextFieldEvent:(id)sender {
UITextField *currentTextField = (UITextField *)sender;
switch (currentTextField.tag) {
case 1:
// some code here for textField with tag = 1
break;
case 2:
// some code here for textField with tag = 2
break;
case 3:
// some code here for textField with tag = 3
break;
default:
// some default code here
break;
}
}
对于不同的事件类型,我可以建议创建不同的IBAction。如果您不需要更改UITextField的属性(例如字体等),那么您实际上并不需要IBOutlets。
希望有所帮助:)
答案 1 :(得分:0)
使用相同名称执行另一个IBAction连接。然后删除重复的方法。两个文本字段都将连接到相同的IBAction方法。