xcode 解决 "Safe Area Layout" 错误

xcode Resolve "Safe Area Layout" errors

停止此错误的正确方法是什么?

现在我只是取消选中 "Use Safe Area Layout Guides",这样我就可以无误地编译应用程序。

在我的例子中,所有部署目标都必须从 8.0 提高到 9.0 :-[

如果您必须支持 8.0 接受的答案作品。

Apple 在 WWDC 2017 Session 412 中告诉我们 Safe Area Layout Guide 可向后部署的 。但是好像不支持iOS 8.0。我在 Xcode 9 GM 上也有同样的错误。

就我而言,我停止使用 Safe Area Layout Guide,但使用 Top Layout GuideBottom Layout Guide,即使它们在 iOS 11 上已被弃用。

如果你的 CocoaPods 遇到这个错误,你必须在 podfile 中强制你的 pods 部署目标最小 iOS 9.0,XCode 9 应该可以解决这种情况,但这不是在撰写本文时正在工作

post_install do |installer|
  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|
      config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '9.0'
    end
  end
end

要解决此问题,您需要执行后续步骤:

  1. 您需要在 Interface Builder 中点击 ViewController。
  2. 然后转到属性检查器。然后点击 "File Inspector"。
  3. 禁用"Use Safe Area Layout Guides"。

尝试关闭然后重新打开 Xcode。

我认为必须支持最新的 iOS 设备,例如 iPhone X、iPhone XS 和 iPhone XR。这个问题的公认答案未能解决这个问题。在 Interface Builder 中,安全区域是一个布局指南,代表视图中未被栏和其他内容遮挡的部分。在 iOS 11+ 中,Apple 将弃用顶部和底部布局指南,并将其替换为此安全区域布局指南。

要解决此非法配置构建错误,您应该:

  1. 更新您的项目文件以支持部署目标 iOS 9,而不是 iOS 8。

  2. 单击“项目”菜单中的 'Clean Build Folder' 菜单项。

  3. 关闭xCode10,然后重新启动。

  4. 重建您的应用程序。

请注意,'Illegal Configuration' 构建错误不再出现,您现在可以在您选择的模拟器中 运行 您的应用程序。