首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Xcode 11测试版iOS 11上的命名颜色问题

Xcode 11测试版iOS 11上的命名颜色问题
EN

Stack Overflow用户
提问于 2019-08-20 19:14:53
回答 4查看 4.4K关注 0票数 4

我正试图在我的iOS应用程序中实现黑暗模式。为了做到这一点,我需要使用命名颜色,但我遇到了一些麻烦。当在光和暗模式之间切换时,在iOS 13模拟器上一切都很好,并且在iOS 12模拟器中颜色也是正确的。当我试图在iOS 11模拟器上运行我的应用程序时,就会出现这个问题。我在故事板中使用的任何命名颜色默认为该颜色的黑暗版本,并且当我试图访问代码中的命名颜色时,我将得到零。只是想知道是否有其他人遇到过这个

EN

回答 4

Stack Overflow用户

发布于 2019-09-16 12:41:07

这是Xcode 11和IOS 11中的错误。

  1. UIColor init方法init?(named name: String)在IOS 11中返回nil
  2. 在故事板或xib文件中使用的命名颜色资产有时默认为暗版本。

下面是在即将发布的Xcode版本中修复之前的解决方法。

  1. 如果UIColor init方法init?(named name: String)返回nil,则需要为光模式提供回退颜色。 设UIColor=myColor(命名:"myColor") ??IOS 11的UIColor.black //默认颜色
  2. “故事板”和“xib文件的命名颜色问题”,如果您在设置任何名称颜色后观察到xib文件或情节提要中的更改,您将注意到resources选项卡下有一个xml标记。对于每个namedColor,都有回退颜色,这种回退颜色是在IOS 11的情况下,因为命名颜色不起作用。你甚至可以看到你的控制台中的翘曲。 Xcode 11中的Bug是,如果将MacOS外观设置为Dark,则默认值设置为暗模式版本;如果将MacOS外观设置为Light,则选择light颜色版本作为默认值。为IOS 11解决这个问题的方法。
代码语言:javascript
复制
1. You can set your `MacOS` appearance to `Light`. After that you need to open each and every storyboards or xib files in yours project once. Once you open it, editor will automatically pick the `Light` version of your colors and you can see in your source control that file is modified and default value will be `Light` version of your color asset. Note that every time your change any value in your color assets, you have to do this again for all the xib files using that named color. 
2. Second is a bit complicated that your write a script that parse all the xib and storyboard files for your project and update the default RGBA values.

票数 5
EN

Stack Overflow用户

发布于 2019-09-11 10:25:42

似乎问题就在苹果这一边。甚至Xcode 11转基因种子也有这个问题。人们正在苹果开发者论坛上讨论这个问题。

https://forums.developer.apple.com/thread/122053

票数 1
EN

Stack Overflow用户

发布于 2019-09-24 13:25:13

更新11.0版本的Xcode (11A420a)

对于那些有这个问题的人和故事板,我建议你的配色方案使用“任何外观”默认为灯光模式。例如,对于深色的我有灰色的背景和亮它的白色,字体是相反的,白色和darkGray。默认一切为光模式,IOS会将其解释为光,您将不会有问题。

正如你在我的屏幕截图上看到的,我的应用程序在IOS 11上运行正常。

如果我不这样做,可能我的所有字体都是白色的,用户根本看不到任何东西。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57580212

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档