键盘在iOS 5上没有动画出现

时间:2013-07-20 23:32:22

标签: iphone ios objective-c ios5

我有一个弹出视图,我使用MJPopupViewController在底部的当前视图中设置动画,并在该弹出视图中有一个UITextField。当我点击该文本字段时,键盘会立即显示,而不是从底部动画。弹出视图是UIViewController,没有任何花哨的东西,没有与键盘相关的代码。我添加了相关键盘通知的观察者,并看到UIKeyboardAnimationDurationUserInfoKey值为0,即使它是第一次在应用程序中显示键盘。键盘随着动画的正常消失,只有键盘从底部滑入的动画被打破。这发生在iOS 5.0和5.1上,键盘在iOS 6 +上正常运行。我正试图追查这个问题,但现在我已经没有线索了。导致UIKeyboardAnimationDurationUserInfoKey为零的原因是什么?

1 个答案:

答案 0 :(得分:0)

尝试添加此内容。

-(void)textFieldDidBeginEditing:(UITextField *)textField
{
    [UIView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:0.5];
    [UIView setAnimationTransition:UIViewAnimationTransitionNone forView:self.view cache:YES];
    [textField becomeFirstResponder];
    [UIView commitAnimations];
}

PS:我们需要为这个设置委托。