ios - 方法 "not available on iOS"

标签 ios objective-c nsdate nscalendar

我听说在 iOS7 中引入了 NSCalendar 的功能。

看了文档,没找到。也不在 OS X 文档中。

函数是 - (BOOL)isDate:(NSDate *)date1 equalToDate:(NSDate *)date2 toUnitGranularity:(NSCalendarUnit)unit 即这两个日期是否在同一天/同一时间周/月等...

但是,当我尝试在 Xcode 5 中使用它时。自动完成显示它时带有红色删除线,然后当我实际使用它时,出现此错误...

enter image description here

这很奇怪,因为这个功能明明就在那里,我就是不能使用它。

谁能解释为什么会这样?

最佳答案

很遗憾,它不适用于 iOS,仅适用于 OS X 10.9。你总是可以欺骗rdar://14995171告诉 Apple 您也希望它适用于 iOS。

如果您查看 iOS 7 SDK 中的 NSCalendar.h,您将看到这些方法自 __NSCALENDAR_COND_IOS_7_0 起被标记为可用。如果您查看同一文件的顶部,则定义为

#if !defined(__NSCALENDAR_COND_IOS_4_0)
#if NS_ENABLE_CALENDAR_NEW_API
#define __NSCALENDAR_COND_IOS_4_0 4_0
#define __NSCALENDAR_COND_IOS_5_0 5_0
#define __NSCALENDAR_COND_IOS_6_0 6_0
#define __NSCALENDAR_COND_IOS_7_0 7_0
#else
#define __NSCALENDAR_COND_IOS_4_0 NA
#define __NSCALENDAR_COND_IOS_5_0 NA
#define __NSCALENDAR_COND_IOS_6_0 NA
#define __NSCALENDAR_COND_IOS_7_0 NA
#endif
#endif

当前计算为 NA这意味着这些方法对 iOS“不可用”。

关于ios - 方法 "not available on iOS",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19005174/

相关文章:

iphone - 带有 UIcontrols 元素的自定义 View

ios - 如何调整 UITableView 宽度以适应其内容?

objective-c - 如何在iOS中获取本地格式化的日期模式字符串?

objective-c - NSComboBox - 获取选定的信息和 NSComboBoxDataSource

iphone - 我如何确保我项目中的所有 NSDate 都没有亚秒级组件?

ios - 如何将日期字符串快速转换为 NSDate 类型

ios - Objective-C : Downloading File With Progress Bar

ios - 我可以观察 SCNView 的相机变换吗?

iphone - MKMapView 内存使用量随着 setRegion : calls 的增长而失控

objective-c - 如何从 cocoa 的 super View 中删除imageview?