为仅在以后的SDK中提供的类添加属性

时间:2011-10-10 10:37:16

标签: ios sdk backwards-compatibility

我希望我的应用程序能够在iOS 3.0及更高版本上运行,并且是一个通用应用程序。 我的问题在这里: 如果我的类需要一个仅在以后的SDK中引入的类的属性,我该怎么办?

例如: 我的类需要UIPopovercontroller的属性,但这只在3.2及更高版本中可用。 我是否需要通过定义NSObject的属性来解决,然后一直转向UIPopoverController?

1 个答案:

答案 0 :(得分:1)

在Cocoa with Love上查看this post,了解有关为类和方法可用性组合编译时和运行时检查的更多信息。 Matt Gallagher开发并发布的预处理器宏可能满足您的需求。但是,你必须对它们进行一些修改以细化3.2和3.0之间的区别。

所有这些都表明,3.x上没有很多用户(截至2011年1月,这个数字大约为10%,现在无疑要少得多。)