关于iOS闹钟周期提醒功能的问题

2024-11-07 10:11:11
推荐回答(1个)
回答1:

你需要获取的实际上是当天是星期1还是星期4, 因为你的需求是在星期1和星期4当天的8点做出推送.
那么你实质上只需要计算出当天是星期几就行了.
NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDate *current = [NSDate date]; //这一步是获取当前时间
NSInteger unit = NSWeekdayCalendarUnit | NSHourCalendarUnit; //格式化参数, 还有其他的一些参数值, 这里只列出来"星期"和"小时"的格式化
NSDateComponents *comps = [calendar components:unit fromDate:current];
NSInteger week = [comps weekday]; //星期几(1,2,3,4,5,6,7)
NSInteger hour = [comps hour]; //小时
然后判断即可