我需要禁用用户与键盘或整个应用程序的交互

I need to disable user interaction with either the keyboard or the entire app

我有一个 UITextField 可以调出键盘,现在,一旦你点击 "Go",你仍然可以在加载内容时编辑文本字段(更重要的是,你正在交互使用键盘仍然可以再次按下 return 键,这会产生一堆问题。

我试过 [[UIApplication sharedApplication] beginIgnoringInteractionEvents],但您仍然可以与键盘进行交互。我不想在加载时隐藏键盘,因为如果输入无效,用户将需要再次使用键盘。非常感谢任何帮助。

我认为你处理这个问题的方式不对。我会做的是:

一旦用户点击 "Go" 并开始加载,隐藏键盘并禁用文本字段上的用户交互。

如果输入无效,请再次启用文本字段并调出键盘。

据我所知,如果键盘在视图中,则无法将其禁用(并且有充分的理由,那是糟糕的 UI 设计。)

你可以这样试,假设你点击"GO"

时goClicked方法是fire方法
- (void)goClicked
{
   [self.view endEditing:YES];
   [yourTextField setUserInteractionEnabled:NO];

   //loading things code
   //when loading completes or loading fails
   [yourTextField setUserInteractionEnabled:YES];
}