吊舱中的命名颜色仅使用浅色外观而不使用深色

时间:2019-06-27 15:48:21

标签: ios swift xcode cocoapods ios13

我有一个私人吊舱,并且在其中是我的资产目录。有一种命名的颜色,其中设置了“任何外观”和“深色外观”值。在使用吊舱的主要项目中,我可以设置颜色storyboard color selection

当我在暗和亮之间切换界面样式时,它甚至在情节提要中看起来是正确的。问题是,当我随后运行代码时,即使在黑暗模式下,它也仅使用浅色外观。更令人困惑的是,如果我通过代码设置颜色,例如viewDidLoad,它会按预期工作。

let bundle = Bundle(for: PrivatePodClass.self)
let color = UIColor(named: "tableViewSectionHeader", in: bundle, compatibleWith: nil)
// Works
view.backgroundColor = color

我不确定这是XCode 11的问题还是cocoapods的问题,但我不想不必要地通过代码设置颜色。

1 个答案:

答案 0 :(得分:-1)

我的项目遇到了同样的问题。尽管我还没有找到解决方法,但我理解了原因。

本质上,接口构建器的XML不存储对该包的引用,因此无法在运行时确定等效的暗色。

This article gives a good description of the problem,以及捆绑中的命名颜色部分中的可能解决方案。