iqu*_*rio 2 cal objective-c nscalendar ios
在tableviewcontroller中,我有这个代码来获取从0到6的天数,其中首先是当前dayNumber的顺序.
self.dayOrder=[NSMutableArray new];
NSCalendar *cal=[NSCalendar currentCalendar];
NSInteger dayNumber = [cal component:NSCalendarUnitWeekday fromDate:[NSDate date]]-1; // Sunday gives 0,
for (int i=0;i<7;i++) {
[self.dayOrder addObject:[NSNumber numberWithInteger:dayNumber]];
dayNumber=(dayNumber+1)%7;
}
Run Code Online (Sandbox Code Playgroud)
当我移动到此视图控制器时,我收到此错误 *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[_NSCopyOnWriteCalendarWrapper component:fromDate:]: unrecognized selector sent to instance 0x15e4b850'
当我添加一个ALL Exceptions断点时,此行发生错误
NSInteger dayNumber = [cal component:NSCalendarUnitWeekday fromDate:[NSDate date]]-1; // Sunday gives 0,
Run Code Online (Sandbox Code Playgroud)
它似乎正在我的iPhone 6上运行,但它在iOS 8上,而不是iOS7上的iPone 4,5c.
不知道为什么会这样,为什么会有任何帮助将不胜感激.
谢谢您的帮助!!!
rma*_*ddy 16
该component:fromDate:方法已添加到NSCalendariOS 8.0中.
如果您需要支持较旧的iOS版本,请使用旧components:fromDate:方法并从结果中提取所需的值NSDateComponents.
NSDateComponents *components = [cal components:NSCalendarUnitWeekday fromDate:[NSDate date]];
NSInteger weekday = [components weekday] - 1;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2155 次 |
| 最近记录: |