当前位置 : 主页 > 手机开发 > ios >

ios – resignFirstResponder键盘在segue之前不会消失

来源:互联网 收集:自由互联 发布时间:2021-06-11
我很难过,我希望有人可以提供帮助. 我在segue之前调用了所有五个文本字段的resign第一响应方法. segue发生,如果键盘在segue之前可见,键盘仍然无论我做什么.这在IOS6中没有发生.它只发生在
我很难过,我希望有人可以提供帮助.

我在segue之前调用了所有五个文本字段的resign第一响应方法. segue发生,如果键盘在segue之前可见,键盘仍然无论我做什么.这在IOS6中没有发生.它只发生在IOS7中.

非常感谢您的帮助.

这是场景:

用户在一次触摸一个文本字段以输入数据.键盘在从第一个响应者从一个字段更改为下一个字段时没有问题,并且可以从“完成”按钮中退出而没有问题.当用户触摸将从选择器视图填充的字段时,问题就出现了.如果键盘在以前的某个文本字段中可见,则它不会消失.

我有这个代码尝试在两个字段的editingDidBegin操作上resignFirstResponder.我正在使用这两个字段来保存数字,但我在下一个视图中从拾取器填充它们.

- (IBAction)txtRatioOrHullTypeTouched:(id)sender 
{    
    // Hide the keyboard before the segue to the picker occurs.
    [self.txtPitch resignFirstResponder];
    [self.txtRPM resignFirstResponder];
    [self.txtSlipOrSpeed resignFirstResponder];
    [self.txtRatio resignFirstResponder];
    [self.txtHullType resignFirstResponder];

    segueToPicker = YES; // Raise flag indicating that this segue is to the picker.
    [self performSegueWithIdentifier:@"toPicker" sender:sender];
}

我也在viewWillDisappear中放了相同的代码,如下所示:

- (void)viewWillDisappear:(BOOL)animated // Unchanged
{
    // Hide the keyboard before the segue to the picker occurs.
    [self.txtPitch resignFirstResponder];
    [self.txtRPM resignFirstResponder];
    [self.txtSlipOrSpeed resignFirstResponder];
    [self.txtRatio resignFirstResponder];
    [self.txtHullType resignFirstResponder];

    [super viewWillDisappear:animated];
}

这两种方法都在初始视图ViewController.m文件中.

我最终在这里删除导致问题的文本字段并用按钮替换它们.没有任何情况我试过(几十个)让这个代码在IOS7中按预期工作,即使它在IOS6中完美运行.
网友评论