You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Xcode 9.2提示‘Named color do not work prior to iOS 11.0’,iOS11.1.1设备异常求助

解决Xcode 9.2中“Named color do not work prior to iOS 11.0”警告(设备为iOS 11.1.1)

嘿,我之前也碰到过一模一样的问题——明明测试设备系统是iOS11+,Xcode却还是弹这个警告,其实核心原因和你的设备系统无关,主要是项目的部署配置出了问题,给你几个快速排查的方案:

  • 检查项目全局部署目标
    打开你的项目,选中TARGETS里的主应用目标,切换到「General」标签页,找到「Deployment Info」区域,确保「iOS Deployment Target」设置为iOS 11.0或更高版本。Xcode的这个警告是针对项目支持的最低系统版本,而非你当前测试设备的版本——哪怕你用的是iOS15,只要部署目标设成iOS10,就会弹这个提示。

  • 检查单个Storyboard/XIB的部署设置
    有时候全局部署目标是对的,但个别Storyboard/XIB的设置没跟上。选中你的Storyboard或XIB文件,打开右侧的「File Inspector」,找到「Interface Builder Document」下的「Builds for」选项,确认它的设置和项目全局部署目标一致(或者直接选「iOS 11.0 or later」)。

  • 代码层面的兼容处理(如果需要支持低版本)
    如果你项目确实需要兼容iOS10及以下,那在代码中使用命名颜色时要加版本判断,避免崩溃:

    func getCustomColor() -> UIColor {
        if #available(iOS 11.0, *) {
            return UIColor(named: "YourCustomColor") ?? .black // 加默认值避免nil崩溃
        } else {
            // 用RGB/十六进制等方式创建备用颜色
            return UIColor(red: 0x33/255.0, green: 0x66/255.0, blue: 0x99/255.0, alpha: 1.0)
        }
    }
    

    不过你的情况设备是iOS11.1.1,所以这个步骤可能不需要,重点还是前面两个配置问题。

  • 清理Xcode缓存重启
    有时候Xcode的缓存会导致奇怪的警告,试试按下Cmd+Shift+Option+K清理Build Folder,然后重启Xcode,再重新编译项目,很多玄学问题都能这么解决。

一般来说,调整部署目标到iOS11.0以上之后,这个警告就会消失啦!

内容的提问来源于stack exchange,提问作者Sudhanshu.B

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 03:30:57