ChildViewController上的inputAccessoryView

时间:2019-05-29 16:04:35

标签: ios cocoa-touch childviewcontroller inputaccessoryview

我有一个带有ChildViewController的ViewController。我需要在inputAccessoryView上显示ChildViewController

我在ChildViewController上实现了以下方法:

override var inputAccessoryView: UIView? {
    return inputBar
}

override var canBecomeFirstResponder: Bool {
    return true
}

inputBar是带有UITextField的视图。当我将parentViewController推入navigationStack时,canBecomeFirstResponder被调用,但inputAccessoryView从未被调用,因此inputAccessoryView从未显示。

我能够让viewController调用inputAccessoryView的唯一方法是在becomeFirstResponder()中调用viewDidAppear,但这在视图中看起来并不好显示并弹出输入。 (如果我在becomeFirstResponser()中叫viewDidLoad(),则不起作用)

我对发生的事情完全不了解。有任何线索吗?

顺便说一句:我看到了: -Display inputAccessoryView in childViewController,但没有帮助

我还在github上看到了一些有关问题的相关评论,例如:

  

您需要将子视图控制器设为第一响应者,以便出现InputAccessoryView(MessageInputBar)

但是他们真的无济于事……有什么线索吗?!

0 个答案:

没有答案