提问人:Elysium 提问时间:6/10/2022 最后编辑:Elysium 更新时间:6/20/2022 访问量:146
iOS 将键盘背景更改为蓝色 (iOS13+)
iOS changes keyboard background to blue (iOS13+)
问:
从 iOS 13 开始,包括 iOS 14,我们的旧旧应用程序不知何故坏了:
默认的 iOS 键盘是完全蓝色的 - If 在按下 shift 键时会自行修复,但如果您再次打开键盘,它会重新出现。UISearchBar 和 UITextField 会发生这种情况。
这是一个原生的 iOS 应用程序,没有任何 UI 框架或任何其他恶作剧。它是一个遗留应用程序,仍在使用 Storyboard,并且是很久以前构建的。
我尝试过:
- 只需使用最新的 SDK 构建应用程序
- 玩弄色调颜色,例如
[[UINavigationBar appearance] setTintColor]
- 外观设置、主题设置等,例如,
[[UITextField appearance] setTintColor]
[[UITextField appearance] setKeyboardAppearance:UIKeyboardAppearanceLight]
- 将主题锁定到浅色
setOverrideUserInterfaceStyle: UIUserInterfaceStyleLight
- 在 UISearchBar / UITextField 的情节提要属性中将键盘外观设置为“浅色”
似乎没有什么区别。我知道这是 iOS 的蓝色默认颜色,所以必须在某处设置并导致这种情况。
有谁知道是什么原因造成的以及如何解决这个问题?
该问题在模拟器和设备上都可见。它似乎打破了 iOS 14 的开头,并使用最新的 iOS 15 保持中断。
答:
-1赞
msusare
6/16/2022
#1
- 检查最新开发中的所有外观更改。
- 检查是否添加了任何新的第三方库来管理TextField上的键盘外观。
- 尝试注释掉上述更改,以及是否将任何色调颜色应用于视图。这可能会解决您的问题。
0赞
Elysium
6/20/2022
#2
所以,在真正的绝望开始之后,我做了每个明智的程序员都会做的事情:我责怪其他人。我开始删除不是严格需要的陈旧/旧依赖项,并设法找到了罪魁祸首:
- 是 Sentry SDK 导致了这个问题,这在某种程度上是有道理的,因为它们可能会深入收集用于错误记录的其他数据
移除 SDK 后,问题已解决。
评论