AutoLayout那些坑

最近在做一个聊天界面,要适配iOS所有屏幕。

以前的思路是键盘弹出的时候去改table 和输入框的frame。

现在发现和autolayout的约束有冲突。

搞了半天发现需要动态改Constraint。

- (void)keyboardDidShow:(NSNotification *)notification
{
    CGRect kbFrame = [[[notification userInfo] objectForKey:UIKeyboardFrameEndUserInfoKey] CGRectValue];
    
    self.msgBoxBottomConstraint.constant = kbFrame.size.height;
    [self.messageBox needsUpdateConstraints];
}

-(void)keyboardDidHide:(NSNotification*)notification
{
    self.msgBoxBottomConstraint.constant = 0;
    [self.messageBox needsUpdateConstraints];
}
原文地址:https://www.cnblogs.com/cokecoffe/p/4026250.html