属性不可用警告

时间:2017-06-27 21:24:30

标签: ios xcode ios11 xcode9

我正在更新我的应用程序以支持iOS 11,我在界面构建器中添加了大标题选项。现在我得到这些“属性不可用 - 喜欢iOS 11.0之前的大型标题”警告。

我知道我可以通过编程方式设置选项,但这会导致其他一些问题,所以我希望我能将它保留在故事板上并忽略警告。如果没有可用的选项,那就不要使用它们。有没有办法做到这一点?

我知道还有其他问题需要同样的事情,但是它们已经很老了,答案最终会解决它,而不是真正处理警告。

2 个答案:

答案 0 :(得分:1)

如错误所述,您的应用可能定位到iOS< 11,因此该属性不会用于早期版本。

您是否在iOS 11和10中测试过您的应用程序?

解决方案:

  • 停用该功能
  • 使用if #available在代码中设置它(如果您想保持与早期iOS版本的兼容性并使用该功能,则为最佳选项)
  • 将项目目标设置为iOS 11
  • Suppress all warnings / Storyboard files only(不推荐)

答案 1 :(得分:1)

由于OP没有说明正在使用Swift还是Objective-C,因此我将同时发布这两个版本。

  • Swift 2.0 +:if #available(iOS 11, *) {}
  • Obj-C:if (@available(iOS 11, *)) {}

How to check iOS version?

提供

作为旁注,我可以使用来禁止特定警告

#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wunguarded-availability"
... your code here ...
#pragma GCC diagnostic pop

不建议这样做-但可以快速解决。