iOS 8键盘 - 扰乱了我的UI

时间:2014-08-06 06:40:10

标签: objective-c keyboard ios8

目前我正在将应用程序更新到iOS 8.我在键盘中遇到了一个新问题。

这个键盘隐藏了我的文本域一半。我必须为此改变什么?。

enter image description here

1 个答案:

答案 0 :(得分:0)

好的,这对我有用。

首先,我绑定了已经拥有的NSLayoutConstraint。

__weak IBOutlet NSLayoutConstraint *bottomInputConstraint;

然后我订阅了 viewDidLoad 上的键盘通知。

- (void)viewDidLoad{
  [super viewDidLoad];
  [[NSNotificationCenter defaultCenter] addObserver:self
                                           selector:@selector(keyboardWillShow:)
                                               name:UIKeyboardWillShowNotification
                                             object:nil];
}

keyboardWillShow:方法如下所示:

- (void)keyboardWillShow:(NSNotification *)aNotification{
    NSDictionary* keyboardInfo = [aNotification userInfo];
    NSValue* keyboardFrameBegin = [keyboardInfo valueForKey:UIKeyboardFrameBeginUserInfoKey];
    CGRect keyboardFrameBeginRect = [keyboardFrameBegin CGRectValue];

    bottomInputConstraint.constant = keyboardFrameBeginRect.size.height + kBottomKeyboardMargin;
}