gpt4 book ai didi

ios - 带有文本字段的 resignFirstResponder 不起作用

转载 作者:行者123 更新时间:2023-12-01 18:40:53 25 4
gpt4 key购买 nike

我有四个 UITextField,每个都与 .h 文件中的一个 socket 相关联。我还为每个文本字段定义了 4 个关闭函数,如下所示:

- (IBAction)dismiss1:(id)sender;
- (IBAction)dismiss2:(id)sender;
- (IBAction)dismiss3:(id)sender;
- (IBAction)dismiss4:(id)sender;

@property (strong, nonatomic) IBOutlet UITextField *name;
@property (strong, nonatomic) IBOutlet UITextField *email;
@property (strong, nonatomic) IBOutlet UITextField *weight;
@property (strong, nonatomic) IBOutlet UITextField *age;

.m文件中dismiss函数的实现:
- (IBAction)dismiss1:(id)sender {
[sender resignFirstResponder];
}

- (IBAction)dismiss2:(id)sender {
[sender resignFirstResponder];
}

...

我非常确定 socket 已正确连接到每个 UITextFiled。每个dismiss函数的IBAction也对应着'Editing did end'事件。但是,当我使用模拟器运行应用程序时,单击“输入/完成”时键盘不会关闭。也很奇怪,当我将断点放在关闭函数中时,在输入相应的 UITextField 时单击“Enter”并不会调出调试器。

非常感谢您的帮助!

更新:我使用断点检查了发送者的对象类型(dismiss1),它是 UITextFiled。但是,当我在第一个 TextField 中单击“Enter”时,我没有进入 Debug模式,而是在单击第二个 TextField 时(在键入之前)进入了 Debug模式。

最佳答案

设置 UITextFielDelegate

textfieldname.delegate = self;

使用此代码将解决您的问题
-(BOOL)textFieldShouldReturn:(UITextField *)textField
{

[textField resignFirstResponder];
return YES;

}

关于ios - 带有文本字段的 resignFirstResponder 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43316898/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com