1
使用NSDateComponents我知道如何获得day组件,但是这给了我一个从1 - 365的值,对吧?我需要获得特定月份的1-30天,我该怎么办?NSDate - 获取本月的几天(不是一年的几天)?
例如,我有一个NSDate可能是5月16日。我希望能够获得这一天,所以它返回16.作为那个月的第16天(而不是一年中的第16天)。
谢谢。
编辑:
我有这样的:
NSCalendar *cal = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDateComponents *comps = [cal components:NSDayCalendarUnit fromDate:[[NSUserDefaults standardUserDefaults] objectForKey:@"dateSaved"]];
然而comps.day返回1,当它应该等于什么日期被保存为,说4
可以肯定的是:尝试NSLog'comps',以及您从默认值中检索的日期对象。 – 2012-02-04 14:42:22
我有NSLogged他们,comps.day总是返回1,我不能记录保存的日期,我会如何正确?我已经尝试了NSLog(@“%@”,[[NSUserDefaults standardUserDefaults] objectForKey:@“dateSaved”]);'我在控制台中得到空值。不过,我知道它不返回null,因为我在其他地方使用它,并设置它的日期和它的工作。 – 2012-02-04 14:48:38
您是否确定密钥是正确的,并且您在代码中的正确时间调用了它?这似乎表明你没有得到正确的'NSDate'对象。 – 2012-02-04 14:53:19