iphone - 如何在所有 iOS 版本中一致地从 NSDate 获取周数?

标签 iphone objective-c ios4 ios5

我使用以下方法从 NSDate 获取周数:

[[calendar components: NSWeekCalendarUnit fromDate:date] week]

不幸的是,我在不同的 iOS 版本中得到不同的值。 iOS 4.* 和 5 返回的值相差 1。是否有任何方法可以一致地检索周数?

最佳答案

自从 iOS5 NSCalender dosent 似乎被定义为默认的 ISO 8601。 您需要使用方法“setMinimumDaysInFirstWeek”设置您的日历以获得预期的周数结果。

[yourCalender setMinimumDaysInFirstWeek:4];

在这种情况下,“4”表示星期四。

http://en.wikipedia.org/wiki/ISO_week_date “一年的第一周是包含该年第一个星期四的那一周。”

我不知道为什么它在 iOS5 中没有定义为默认的“4”。我猜只是那些奇怪的“错误”之一;)

是的,这将适用于 iOS 4 和 5。

关于iphone - 如何在所有 iOS 版本中一致地从 NSDate 获取周数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8037897/

相关文章:

iphone - html5 <audio> : how to use the built-in `next` , 和 `previous` 控件在 iOS 4.2/Android 2.3

iphone - Objective-C : getting error on console while trying to display app on ipad device?

iphone - 如何从应用程序商店为应用程序购买额外的应用程序内商品?

ios - 在 UIView/UIWindow 上应用过滤器以修改底层 View 渲染

java - 实例化一个类,在java中传递?

java - 适用于 iOS 的小数格式

iphone - 如何创建带有标题、导航栏和按钮栏的窗口?

ios - 获取选中的单元格标签

ios - 在iphone App中播放背景视频

ios - 在 objective-c 中使用 CAPSPageMenu 检测我们正在使用哪个选项卡