Objective-C Language
NSCalendar
Szukaj…
Informacje o ustawieniach regionalnych systemu
+currentCalendar zwraca kalendarz logiczny dla bieżącego użytkownika.
NSCalendar *calender = [NSCalendar currentCalendar];
NSLog(@"%@",calender);
+autoupdatingCurrentCalendar zwraca bieżący kalendarz logiczny dla bieżącego użytkownika.
NSCalendar *calender = [NSCalendar autoupdatingCurrentCalendar];
NSLog(@"%@",calender);
Inicjowanie kalendarza
- initWithCalendarIdentifier: Inicjuje nowo przydzielony obiekt NSCalendar dla kalendarza określonego przez dany identyfikator.
NSCalendar *calender = [[NSCalendar alloc]initWithCalendarIdentifier:@"gregorian"];
NSLog(@"%@",calender);
- setFirstWeekday: Ustawia indeks pierwszego dnia tygodnia dla odbiornika.
NSCalendar *calender = [NSCalendar autoupdatingCurrentCalendar];
[calender setFirstWeekday:1];
NSLog(@"%d",[calender firstWeekday]);
- setLocale: Ustawia ustawienia regionalne dla odbiornika.
NSCalendar *calender = [NSCalendar autoupdatingCurrentCalendar];
[calender setLocale:[NSLocale currentLocale]];
NSLog(@"%@",[calender locale]);
- setMinimumDaysInFirstWeek: Ustawia minimalną liczbę dni w pierwszym tygodniu odbiornika.
NSCalendar *calender = [NSCalendar autoupdatingCurrentCalendar];
[calender setMinimumDaysInFirstWeek:7];
NSLog(@"%d",[calender minimumDaysInFirstWeek]);
- setTimeZone: Ustawia strefę czasową odbiornika.
NSCalendar *calender = [NSCalendar autoupdatingCurrentCalendar];
[calender setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];
NSLog(@"%@",[calender timeZone]);
Obliczenia kalendarzowe
- components:fromDate: Zwraca obiekt NSDateComponents zawierający daną datę rozłożoną na określone komponenty
NSCalendar *calender = [NSCalendar autoupdatingCurrentCalendar];
[calender setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];
NSLog(@"%@",[calender components:NSCalendarUnitDay fromDate:[NSDate date]]);
NSLog(@"%@",[calender components:NSCalendarUnitYear fromDate:[NSDate date]]);
NSLog(@"%@",[calender components:NSCalendarUnitMonth fromDate:[NSDate date]]);
- components:fromDate:toDate:options: Zwraca, jako obiekt NSDateComponents przy użyciu określonych składników, różnicę między dwiema podanymi datami.
NSCalendar *calender = [NSCalendar autoupdatingCurrentCalendar];
[calender setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];
NSLog(@"%@",[calender components:NSCalendarUnitYear fromDate:[NSDate dateWithTimeIntervalSince1970:0] toDate:[NSDate dateWithTimeIntervalSinceNow:18000] options:NSCalendarWrapComponents]);
- dateByAddingComponents:toDate:options: Zwraca nowy obiekt - dateByAddingComponents:toDate:options: reprezentujący czas bezwzględny obliczony przez dodanie danych składników do określonej daty.
NSCalendar *calender = [NSCalendar autoupdatingCurrentCalendar];
NSDateComponents *dateComponent = [[NSDateComponents alloc]init];
[dateComponent setYear:10];
NSLog(@"%@",[calender dateByAddingComponents:dateComponent toDate:[NSDate dateWithTimeIntervalSinceNow:0] options:NSCalendarWrapComponents] );
- dateFromComponents: Zwraca nowy obiekt - dateFromComponents: reprezentujący czas bezwzględny obliczony na podstawie podanych składników.
NSCalendar *calender = [NSCalendar autoupdatingCurrentCalendar];
NSDateComponents *dateComponent = [[NSDateComponents alloc]init];
[dateComponent setYear:2020];
NSLog(@"%@",[calender dateFromComponents:dateComponent]);