我正在为练习构建一个基本的时钟应用程序,由于某种原因,时间不会自动更改为最新的分钟或小时。例如,当前时间是17:56,但它显示的是17:54,这是我打开应用程序的最新时间。
NSDate *now = [NSDate date];
NSDateFormatter *theOutput = [[NSDateFormatter alloc] init];
[theOutput setDateFormat:@"HH:mm"];
NSString *dateString = [theOutput stringFromDate:now];
NSString *time = [[NSString alloc] initWithFormat:@"The current time is %@", dateString];
[currentTime setText:time];
我究竟做错了什么?
答案 0 :(得分:1)
您显示的代码将数据和时间设置为该代码执行的时间。该代码中没有任何内容可以更新时钟。你是否每分钟调用一次这段代码?如果不是,则需要使用NSTimer每分钟调用一次。
答案 1 :(得分:0)
检查是否已分配currentTime
变量。如果是,请致电:
[currentTime setNeedsDisplay];
设置文本后。