Datum und Uhrzeit unter iOS
Di. 20.11. 2012 Gespeichert in:Codesnippets | Leserbriefe
Frage:
Immer wenn ich meine App starte, soll das aktuelle Datum angezeigt werden. Wie mache ich das?
Antwort:
Möchte man das aktuelle Datum, oder die Uhrzeit, ermitteln, führt der Weg über die Klasse NSDate. Mit Hilfe eines NSDateFormatter-Objektes kann die Ausgabe anschließend den Anforderungen entsprechend formatiert werden.
Soll die angezeigte Uhrzeit oder das Datum ständig aktualisiert werden ist allerdings ein wenig mehr Aufwand erforderlich. Die beschriebenen Anweisungen müssen immer wieder aufgerufen werden. Ein NSTimer kann diese Aufgabe übernehmen.
Immer wenn ich meine App starte, soll das aktuelle Datum angezeigt werden. Wie mache ich das?
Antwort:
Möchte man das aktuelle Datum, oder die Uhrzeit, ermitteln, führt der Weg über die Klasse NSDate. Mit Hilfe eines NSDateFormatter-Objektes kann die Ausgabe anschließend den Anforderungen entsprechend formatiert werden.
NSDate*today = [NSDate date];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"HH:mm:ss"];
NSString *currentTime = [dateFormatter stringFromDate:today];
NSLog(@"Die Uhrzeit: %@",currentTime);
[dateFormatter setDateFormat:@"dd.MM.yyyy"];
NSString *currentDate = [dateFormatter stringFromDate:today];
NSLog(@"Das Datum: %@",currentDate);
Soll die angezeigte Uhrzeit oder das Datum ständig aktualisiert werden ist allerdings ein wenig mehr Aufwand erforderlich. Die beschriebenen Anweisungen müssen immer wieder aufgerufen werden. Ein NSTimer kann diese Aufgabe übernehmen.
NSTimer* timer;
- (void)viewDidLoad
{
[super viewDidLoad];
timer = [NSTimer scheduledTimerWithTimeInterval:1
target:self selector:@selector(timerTick)userInfo:nil
repeats:YES];
}
- (void) timerTick
{
NSDate *today = [NSDate date];
NSDateFormatter *dateFormatter =[[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"HH:mm:ss"];
NSString *currentTime = [dateFormatterstringFromDate:today];
NSLog(@"%@",currentTime);
[dateFormatter setDateFormat:@"dd.MM.yyyy"];
NSString *currentDate = [dateFormatterstringFromDate:today];
NSLog(@"%@",currentDate);
}