2014-09-29 55 views
6

我们有一个带键盘输入附件的UITextView - 附件是另一个带有几个按钮的UIView,另一个UITextView根据需要显示消息。 (类似于你在iMessage中看到的效果)iOS8 - 具有动态高度的键盘输入附件视图

一切工作正常,通过iOS7和输入配件增长向上键盘上方,当我们更新帧的大小。但是对于iOS8,配件视图向下扩展到预测文本和键盘。

有没有一种方法可以告诉iOS8键盘视图来重新布置附件视图?我试过调用ReloadInputViews(),它似乎没有改变任何东西。

卡住了 - 感谢您的帮助。

回答

1

我重写了我的视图上的addConstraint方法,因为苹果为iOS8设置了一个高度不变的约束。这似乎解决了这个问题。

+0

我还没有弄明白这一点,但这绝对是正确的方向。谢谢你的提示! – Ender2050 2014-10-03 00:42:49

+0

这并没有很好的工作。你是否阻止通过addConstraint添加所有约束?因为这也阻止了你自己的约束(来自IB)。 – 2014-10-14 21:18:32

+0

这不工作:(如果你阻止添加约束,它只会被添加到超级视图。 – 2014-11-27 21:47:34

0

我也遇到过这个问题。我所做的是重写inputAccessoryView的layoutSubviews方法,并使高度为固定数字。像这样:

- (void)layoutSubviews { 
    if (self.height > 38) { 
     self.height = 38; 
    } 
} 

PS: 什么奇怪的是,当你inputAccessoryView的身高是50以上,inputAccessoryView不会向下增长。