4

使用 iOS 13 在明暗模式之间切换时,我遇到了键盘显示的异常行为。

该视图有一个 inputAccessoryView 供用户输入消息。然后当键盘显示时切换明暗模式时,明暗模式不会反映在键盘上,直到键盘被隐藏并再次显示。最初,这是我在暗模式和亮模式之间切换时看到的:

在此处输入图像描述

关闭键盘并再次显示颜色正常。这只发生在带有 inputAccessoryView 的键盘上。当仅使用 inputAccessoryView 更改模式时,没有键盘显示 inputAccessoryView 颜色按预期更改。

4

1 回答 1

1

我也遇到过这个。我的解决方案是当颜色外观发生变化时,在 inputAccessoryView 中的 UITextView 上 resignFirstResponder 。不理想,但可以解决问题。

(我必须在 messageInputAccessoryView 中覆盖 resignFirstResponder 以在 textView 上 resignFirstResponder)

override func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
    super.traitCollectionDidChange(previousTraitCollection)

    if #available(iOS 13.0, *) {
      if self.traitCollection.hasDifferentColorAppearance(comparedTo: previousTraitCollection) {
        _ = messageInputAccessoryView.resignFirstResponder()
      }
    }
  }
于 2020-04-29T09:09:35.587 回答