iOS 如何使用早期版本的 iOS 中不存在的情节提要元素?

Posted

技术标签:

【中文标题】iOS 如何使用早期版本的 iOS 中不存在的情节提要元素?【英文标题】:iOS how can I use storyboard elements that don't exist in earlier versions of iOS? 【发布时间】:2016-06-07 01:04:50 【问题描述】:

我有一个使用情节提要最初针对 ios7 的项目。我已将 UIStackView 添加到视图控制器并收到“iOS 9.0 之前的 UIStackView”错误。由于此错误,构建失败。

如果设备支持,我怎样才能将我的项目保留为 iOS7,同时有条件地包含来自 iOS9 的新故事板元素?

我在项目中已经有了只能在 iOS8+ 上运行的条件代码,但是我怎样才能用故事板做类似的事情呢?

【问题讨论】:

【参考方案1】:

iOS 9 提供了 UIStackView 类(及其软件),但 iOS 8 或 7 不提供。当应用程序在 iOS 8 中尝试从情节提要中实例化对象时,它将失败,因为它找不到类。

解决这个问题的唯一方法:

为不同的 iOS 版本提供不同的故事板 构建一个做同样事情的自定义类。然后您可以在旧版本的 iOS 中使用它。您可能会发现已经为您想要的类执行此操作的开源库。

【讨论】:

以上是关于iOS 如何使用早期版本的 iOS 中不存在的情节提要元素?的主要内容,如果未能解决你的问题,请参考以下文章

在 Xcode 4.3 中创建没有情节提要的项目

如何在情节提要中使用 UICollectionViewController 同时仍支持 ios 5.1?

如何检查iOS版本中是否有字体?

如何检查字体是不是在 iOS 版本中可用?

iPhone SDK 字体

iOS5 情节提要错误:情节提要在 iOS 4.3 及更低版本上不可用