ios - 如何通过视图控制器更改 UIWindow 背景颜色
问题描述
这个问题与此非常相似:How to set an app's UIWindow color when calling it from ViewController。但是,那里的解决方案不起作用。
自从苹果将窗口更改为位于场景委托(而不是应用程序委托)中以来,我一直无法更改场景委托之外的窗口(UIWindow)背景颜色(使用上面文章中的方法)。有什么方法可以调用 Scene Delegate 内部的函数(通过视图控制器)或更改视图控制器中的窗口背景颜色。我需要此功能的原因是因为我在应用程序内部处理我的主题,并且当用户更改主题时,我需要 UIWindow 背景颜色也更改(对于我的所有应用程序),以适应 UIWindow 颜色显示的任何情况(例如:呈现一个视图控制器)。我尝试过的解决方案是:
if let window = UIApplication.shared.delegate?.window as? UIWindow {
window.backgroundColor = .red
}
但这对我不起作用。
解决方案
推荐阅读
- python - NOT NULL 约束失败:users_userprofile.user_id
- javascript - ImagePicker 的响应不包含数据
- java - AOP Spring @AfterReturning 没有正确调用切面方法
- python - Python将Json字符串值转换为int float boolean
- c++ - 我可以获取标准库中定义的函数的地址吗?
- symmetricds - SymmetricDS 中的转换与表触发器
- javascript - 如何在不损害一致性的情况下使用 LoopBack 3 增加一些数据?
- r - 在ggplot boxplot中绘制多个框?
- r - 点图:如何根据数据中的值更改点图的点大小并将所有 x 轴值变为整数
- r - 在R中循环保存多个图