2010-03-02 18 views

Odpowiedz

19

Musisz użyć NSDateComponents, co jest nieco trudne (nie wspominając o gadatliwości!), Ponieważ musisz zrozumieć nieco o sposobie, w jaki Cocoa obsługuje kalendarze. Jest wspaniałe wprowadzenie do docs; oto zmodyfikowany fragment:

NSDate *today = [NSDate date]; 
NSCalendar *gregorian = [[[NSCalendar alloc] 
         initWithCalendarIdentifier:NSGregorianCalendar] autorelease]; 
NSDateComponents *components = 
        [gregorian components:(NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit) fromDate:today]; 

NSInteger hour = [components hour]; 
NSInteger minute = [components minute]; 
NSInteger second = [components second]; 
+0

[gregoriański autorelease] na końcu pewnie, aby zapobiec pamięci przecieki –

+0

@TomH, dobre połączenie, stałe. –

+0

Dobra robota do ukończenia moich rozwiązań dzięki Beder .. –

-1
NSDateFormatter * formatter; 

self.formatter = [[NSDateFormatter alloc] init]; 

[_formatter setDateFormat:@"HH:mm:ss"]; 

NSDate *today = [NSDate date]; 

NSString *p_time = [_formatter stringFromDate:today]; 
Powiązane problemy