inputAccessoryView 不显示

inputAccessoryView not displaying

我正在尝试创建一个类似于 iOS 消息传递应用程序的消息传递界面。我正在努力解决的部分是覆盖 inputAccessoryView(在视图控制器上)对我没有影响。

如果您查看下面的 link,它显示了一个简短的潜在解决方案,但没有详细说明。

以下 link 比我更好地解释了我的问题:http://robots.thoughtbot.com/input-accessorizing-uiviewcontroller

这是我尝试过的一些事情的例子:

override func canBecomeFirstResponder() -> Bool {
    return true
}

override var inputAccessoryView: UIView! {
    return self.keyboardToolbar // Which is of type UIToolbar
    // I have also tried creating a toolbar here and returning it instead of the above approach, with no luck
}

我也在SO上看到这个问题:Swift inputAccessoryView override bug 这表明它对用户有用......我只想说我目前还没有设法在屏幕上显示任何东西。

我做错了什么?有没有人有我可以尝试的工作片段?

原来我漏了一个:

self.becomeFirstResponder()

现在一切都显示出来了。

对于遇到此问题的任何其他人,我必须将此行添加到 inputAccessoryView 返回的 UIView 子类中:

self.autoresizingMask = .flexibleHeight