Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/104.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在iOS 11.0-11.2上,UIColor(名为:)始终返回nil_Ios_Swift_Uiimage_Ios11 - Fatal编程技术网

在iOS 11.0-11.2上,UIColor(名为:)始终返回nil

在iOS 11.0-11.2上,UIColor(名为:)始终返回nil,ios,swift,uiimage,ios11,Ios,Swift,Uiimage,Ios11,我有一个从自定义调色板返回UIColor的类。我以编程方式调用它,但当我在iOS 11上测试它时,它总是返回一个nil结果。。。我在多个设备和操作系统版本11.0、11.0.1、11.2上尝试了这一点,它们都返回nil。但只要我在iOS 12上运行它们,它就会返回正确的颜色 var color: UIColor? { switch self { case .darkIndigo: return UIColor(named: "darkIndigo") case .ligh

我有一个从自定义调色板返回UIColor的类。我以编程方式调用它,但当我在iOS 11上测试它时,它总是返回一个
nil
结果。。。我在多个设备和操作系统版本11.0、11.0.1、11.2上尝试了这一点,它们都返回
nil
。但只要我在iOS 12上运行它们,它就会返回正确的颜色

var color: UIColor? {
    switch self {
    case .darkIndigo: return UIColor(named: "darkIndigo")
    case .lightNavy: return UIColor(named: "lightNavy")
    case .cobalt: return UIColor(named: "cobalt")
    }
}
我最近更改了应用程序的捆绑ID。。。这让我觉得这与UIImage在使用多个bundle时遇到的类似问题有关。尤其是当我收到错误信息时

警告:无法从以下任何捆绑包解析名为“darkIndigo”的颜色:

但这应该如何解决呢?我是否应该手动删除整个资产目录并重新添加?

编辑: 这是Xcode中的一个bug,在新的GM种子2(11A420a)中修复了它


我也遇到了这个问题。我使用的是Xcode 11 beta 6,以及命令行工具11.0

我通过切换到Xcode 10.2.1和命令行工具10.2.1解决了这个问题,再次清洁和构建


我也提到了这个问题,我的应用程序广泛使用了XIB和故事板

我可以通过将Xcode beta 6指向beta 5中的资产编译器(actool)来绕过这个问题,我的机器上仍然有这个编译器。您需要链接到此版本(示例命令:
ln-s/Applications/Xcode-beta5.app/Contents/Developer/usr/bin/actool-actool
,从Beta 6/7路径中)


不确定这是否会导致应用程序提交出现任何问题,但我确认iOS 11上的应用程序看起来还是应该的(浅色)。

您是从应用程序还是从框架中使用它?您的主捆绑包中有颜色资源吗?顺便说一句,使用
枚举X:String
可以将代码简单地写为
返回UIColor(命名为:rawValue)
。颜色资源在我的主捆绑包中,它正在从我的应用程序中使用……我也遇到了同样的问题。我唯一的区别是,我最近没有更改我的应用程序的捆绑ID。然而,就像你一样,我也从苹果那里得到了一个
nil
UIColor。我已经请求苹果在这件事上提供代码级别的支持,所以当我得到回复时,我会将消息通知你@Nick。谢谢!我在Xcode 11 beta 6中也遇到了这种情况。在Xcode 11 beta 7中也遇到了这种情况。在编译资产目录的测试版中一定有问题。在测试版7中也可以看到这一点!由于我们的测试周期已经很晚了,我将在可用性检查中对其进行总结。不幸的是,在GMC出现XCode测试错误之前,我怀疑是否会有修复。在这个线程(以及许多单独的线程)中看到一些关于它的提及:苹果刚刚发布了一个Xcode 11 GM2来解决这个问题。苹果刚刚发布了Xcode 11 GM2来解决这个问题。