副作用のないより良い解決策を見つけました。JSQMessagesViewControllerの子孫
クラスで
アクションを作成できます。
1.ベース クラスのこのメソッドを使用できるようにします。
@interface JSQMessagesViewController ()
- (void)jsq_setCollectionViewInsetsTopValue:(CGFloat)top
bottomValue:(CGFloat)bottom;
@end
2.メソッドの親実現をオーバーライドします (サイズが変更されたときに呼び出されます)。
- (void)jsq_updateCollectionViewInsets {
CGFloat topInset = self.topLayoutGuide.length + self.topContentAdditionalInset;
CGFloat bottomInset = 0.0;
[self jsq_setCollectionViewInsetsTopValue:topInset bottomValue:bottomInset];
}
3.入力ツールバーを永久に非表示にするメソッドを記述します。
- (void)hideInputToolbar {
self.inputToolbar.hidden = YES;
[self jsq_updateCollectionViewInsets];
}
4.お楽しみください!