有没有办法检测用户是否按下键盘上的“完成”键(或等效键)调用了-[UITextFieldDelegate textFieldShouldReturn]
,还是通过编程调用-[UITextField resignFirstResponder]
来调用它?
答案 0 :(得分:1)
是的,您可以使用委托方法来确定是 resignFirstResponder 还是返回键。
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
// here return key pressed will be handled
return YES;
}
- (void)textFieldDidEndEditing:(UITextField *)textField {
// used to handle resignFirstResponder
}
答案 1 :(得分:1)
@interface ViewController ()<UITextFieldDelegate>
-(void) viewDidLoad
{
textfieldObject.delegate = self;
}
-(BOOL)textFieldShouldReturn:( UITextField * )textField
{
return YES;
}
答案 2 :(得分:0)
我没有专门测试过这个,但您可以检查文本字段的isFirstResponder
状态。如果是第一个响应者,则表示已按下回车键。否则,您知道调用了resignFirstResponder
。这假设resignFirstResponder在调用textFieldShouldReturn
之前更改状态。