UIKeyboard禁用触摸事件

时间:2014-09-24 12:03:50

标签: ios objective-c xcode uitextfield

当我的应用程序中显示键盘时,我的视图中没有任何触摸功能。我将点按UITextField,然后会显示键盘。现在显示它,即使在活动文本字段中也无法点击其他文本字段,按钮或选择文本。

任何可能导致此问题的想法

感谢。

更新1:

我发现因为我在显示键盘时将视图向上移动了一点,这导致了问题。我有主视图控制器视图。其中包含formContainerView,其中包含我的两个UITextFieldUIButton

我动画formContainerView,以便我的字段不会隐藏在键盘后面。我运行以下代码来执行此操作:

[UIView animateWithDuration:duration delay:0 options:animationOptionsWithCurve(curve) animations:^{

        [self.formContainerView setFrame:CGRectOffset(self.formContainerView.frame, 0, -220.0f)];
    }
                     completion:^(BOOL finished) {  }];

所以我只是将视图偏移220像素。如果我将其设置为0,即不为该位置设置动画,则所有触摸都会起作用。但是通过移动视图,所有触摸都无法工作。

为什么?

1 个答案:

答案 0 :(得分:0)

- (BOOL)textFieldShouldReturn:(UITextField *)textField{

    if ([txtfld_firstname isFirstResponder])
    {
        [txtfld_firstname resignFirstResponder]; 
        [txtfld_secondname becomeFirstResponder];    
    }
     return YES;
}

首先设置为textfield的委托。 然后在单击第一个文本字段时编写上述方法,然后按键盘上的返回按钮,此(textfield delegate)方法调用和键盘禁用。