我在白色背景上的launchscreen.storyboard上有一个蓝色徽标。对于iOS 13引入的新DarkMode,我想反转颜色,即蓝色背景和白色徽标。
众所周知,可以使用资产目录中的命名颜色来完成此操作,颜色会根据设备的特性而变化。在iOS 11及更高版本中,此方法完全可以正常工作,但在尝试支持iOS 10时显示此错误:
Named colors do not work prior to iOS 11.0.
我尝试用代码为启动屏幕场景制作一个视图控制器,并使用该#ifavailable
子句在其中设置颜色,但是编译器说启动屏幕可能没有与之关联的自定义类。
我还考虑过根据iOS版本使用不同的启动屏幕情节提要,但找不到任何有关方法。
我能做些什么?如何解决这个问题呢?
谢谢菲利克斯
作为建议在这里,解决的办法是使用动态图像为背景,而不是:
为浅色和深色模式创建2张具有纯色的图像。
将它们导入您的资产目录并定义“任何” /“黑暗”外观。
UIImageView
在启动屏幕的背景中添加带有此图片的图片(“缩放至填充”,限于容器)。
即使您的部署目标低于iOS 11.0,它也会编译,并在启动时显示适当的颜色。