我创建了一个自定义键盘,并且有两个文本字段。
我正在视图中调用[firstTextField becomeFirstResponder]
DidLoad
让我的键盘可见。
我如何知道哪个文本字段当前处于活动状态,以便将用户在键盘上键入的内容写入相应的文本字段?
我试过- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField
,但它不叫
知道吗?
您应该能够使用isFirstResponder
来确定两个UITextFields中的哪一个当前处于活动状态。
if ([firstTextField isFirstResponder]) {
...
}
else {
...
}
要调用textFieldShouldBeginEditing
,需要将两个文本字段的delegate
出口设置为textFieldShouldBeginEditing
方法所在的任何视图控制器(或任何位置)。
您可以通过编程方式(例如firstTextField.delegate = self;
)或通过XIB文件设置委托。
你的直觉是正确的,一旦调用textFieldShouldBeginEditing
,你就会知道(从textField
参数)用户当前正在输入哪个字段。