2014-09-29 20 views
6

Bir klavye giriş aksesuarı olan bir UITextView'ımız var - aksesuar birkaç düğmeli başka bir UIView ve bir mesajı görüntülemek için gerektiği kadar büyüyecek bir başka UITextView. (iMessage'de gördüğünüze benzer)iOS8 - dinamik yükseklik ile klavye giriş aksesuarı görünümü

Her şey iOS7 aracılığıyla iyi çalışır ve çerçeve boyutunu güncelleştirdiğimizde giriş aksesuarı klavyenin üzerinde yukarı doğru büyür. Ancak iOS8 ile aksesuar görünümü, tahmini metin ve klavye üzerinde aşağı doğru büyür.

iOS8 klavye görünümünde aksesuar görünümlerini göstermek için yeni bir yöntem var mı? ReloadInputViews() çağırmayı denedim ve hiçbir şey değişmiyor gibi görünüyor.

Takılıyorum - yardımlarınız için teşekkürler.

cevap

1

Apple, iOS8 için sabit yükseklikte bir kısıtlama oluşturduğunda görünümümde addConstraint yöntemini geçersiz kılar. Bu sorunu çözmek gibi görünüyor.

+0

Hala bunu tam olarak çözemedim, ama bu kesinlikle doğru yön. Bahşiş için teşekkürler! – Ender2050

+0

Bu çok iyi çalışmadı. Tüm kısıtlamaların addConstraint ile eklenmesini engellediniz mi? Çünkü bu kendi kısıtlamalarınızı da engeller (IB'den). –

+0

Bu işe yaramaz :(Kısıtlamayı eklemeyi engellerseniz, yalnızca süper görüntüye eklenir. –

0

Bu sorunla da karşılaşıyorum. Yaptığım şey, inputAccessoryView'ın layoutSubviews yöntemini geçersiz kılmak ve yüksekliğin sabit bir sayı olması. Böyle:

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

Not: sizin inputAccessoryView yüksekliği 50 üzerinde olduğunda, inputAccessoryView aşağıya doğru büyür olmaz edilir ne tuhaf.

İlgili konular