如何根据当前时间执行两项操作?
例如:如果当前时间在上午8点到下午2点之间,则显示labelA。 如果当前时间在下午2点到6点之间,则显示labelB。
谢谢!
答案 0 :(得分:1)
为何选择IBAction
?就这样做:
- (void)viewDidLoad
{
[super viewDidLoad];
self.labelA.text = @"It's between 8am and 2pm";
self.labelB.text = @"It's between 2pm and 6pm";
NSDate *date = [NSDate date];
NSCalendar *gregorianCal = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDateComponents *dateComps = [gregorianCal components: (NSHourCalendarUnit | NSMinuteCalendarUnit)
fromDate: date];
if (dateComps.hour > 8 && dateComps.hour <= 14)
{
[self.view addSubview:self.labelA];
}
else if (dateComps.hour > 14 && dateComps.hour < 18)
{
[self.view addSubview:self.labelB];
}
}
答案 1 :(得分:0)
使用NSDateComponents
将当前时间(从[NSDate date]
获得)转换为小时,分钟等组件。然后只需检查小时组件,看看它在哪个范围内并根据该标签采取适当的标签行动。