2014-09-29 71 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不會向下增長。