12

我试图找出将自定义 inputAccessoryView 放在标签栏顶部的最佳方法。目前,我有一个 inputAccessoryView 位于屏幕的最底部,但它覆盖了标签栏。任何人都知道将 inputAccessoryView 向上移动的最佳实践吗?

目前,我在带有标签栏的情节提要中定义了一个视图。其对应的视图控制器获取视图并调用 becomeFirstResponder。我已经覆盖了: - (UIView *)inputAccessoryView 和 -(BOOL)canBecomeFirstResponder 在视图的 .m 中

4

1 回答 1

0

通过将工具栏框架移动bottomSpacing=标签栏高度找到了解决方法:

- (void) layoutSubviews {
    [super layoutSubviews];
    CGRect origFrame = self.frame;
    origFrame.origin.y = _keyboardIsVisible ? 0 : -self.bottomSpacing;
    self.frame = origFrame;
}

奇怪的是,它在 JSQMessagesInputToolbar 中运行良好,但是如果我在包装工具栏的 UIView 中执行此操作,它会在动画后丢失,或者我可能遗漏了一些东西。

于 2018-06-01T11:45:57.923 回答