如何在iOS应用中持续显示当前时间?

时间:2014-05-03 08:02:44

标签: ios objective-c

我在Xcode中制作单个视图应用程序,它只是更新标签中每秒的时间。我知道如何获取当前时间(使用NSDate)但是我要刷新的方法在哪里?我在ViewController中看到的所有内容都是以下方法:

- (void)viewDidLoad
- (void)didReceiveMemoryWarning

我在AppDelegate中看到的所有内容都是以下方法:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions                            
- (void)applicationWillResignActive:(UIApplication *)application
- (void)applicationDidEnterBackground:(UIApplication *)application
- (void)applicationWillEnterForeground:(UIApplication *)application
- (void)applicationDidBecomeActive:(UIApplication *)application
- (void)applicationWillTerminate:(UIApplication *)application

据我所知,这些方法中没有一个看起来能够不断更新时间。我希望它显示时间类似时钟(它不断更新)。我该怎么做?我期待有一种循环方法可以做到这一点,但它看起来没有。

1 个答案:

答案 0 :(得分:2)

试试这个:)

 - (void)viewDidLoad
 {
    NSDateFormatter *timeformatter = [[NSDateFormatter alloc] init];
    [timeformatter setTimeStyle: NSDateFormatterShortStyle];
    [timeformatter setDateFormat:@"hh:mm:ss a"];

   [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(UpdateTime:) userInfo:nil repeats:YES];

 }

-(void)UpdateTime:(id)sender
{
   NSString *Time  = [timeformatter stringFromDate:[NSDate date]];
   NSLog(@"Time == %@",Time);
}