Objective-C Language
NSCalendar
Ricerca…
Informazioni sulle impostazioni internazionali del sistema
+currentCalendar
restituisce il calendario logico per l'utente corrente.
NSCalendar *calender = [NSCalendar currentCalendar];
NSLog(@"%@",calender);
+autoupdatingCurrentCalendar
restituisce il calendario logico corrente per l'utente corrente.
NSCalendar *calender = [NSCalendar autoupdatingCurrentCalendar];
NSLog(@"%@",calender);
Inizializzazione di un calendario
- initWithCalendarIdentifier:
inizializza un oggetto NSCalendar appena assegnato per il calendario specificato da un determinato identificatore.
NSCalendar *calender = [[NSCalendar alloc]initWithCalendarIdentifier:@"gregorian"];
NSLog(@"%@",calender);
- setFirstWeekday:
imposta l'indice del primo giorno della settimana per il destinatario.
NSCalendar *calender = [NSCalendar autoupdatingCurrentCalendar];
[calender setFirstWeekday:1];
NSLog(@"%d",[calender firstWeekday]);
- setLocale:
imposta le - setLocale:
internazionali per il ricevitore.
NSCalendar *calender = [NSCalendar autoupdatingCurrentCalendar];
[calender setLocale:[NSLocale currentLocale]];
NSLog(@"%@",[calender locale]);
- setMinimumDaysInFirstWeek:
imposta il numero minimo di giorni nella prima settimana del ricevitore.
NSCalendar *calender = [NSCalendar autoupdatingCurrentCalendar];
[calender setMinimumDaysInFirstWeek:7];
NSLog(@"%d",[calender minimumDaysInFirstWeek]);
- setTimeZone:
imposta il fuso orario per il ricevitore.
NSCalendar *calender = [NSCalendar autoupdatingCurrentCalendar];
[calender setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];
NSLog(@"%@",[calender timeZone]);
Calcoli Calendari
- components:fromDate:
restituisce un oggetto NSDateComponents contenente una data data scomposta in componenti specificati
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:
restituisce, come oggetto NSDateComponents utilizzando componenti specificati, la differenza tra due date fornite.
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:
restituisce un nuovo oggetto NSDate che rappresenta il tempo assoluto calcolato aggiungendo determinati componenti a una determinata data.
NSCalendar *calender = [NSCalendar autoupdatingCurrentCalendar];
NSDateComponents *dateComponent = [[NSDateComponents alloc]init];
[dateComponent setYear:10];
NSLog(@"%@",[calender dateByAddingComponents:dateComponent toDate:[NSDate dateWithTimeIntervalSinceNow:0] options:NSCalendarWrapComponents] );
- dateFromComponents:
restituisce un nuovo oggetto NSDate che rappresenta il tempo assoluto calcolato da determinati componenti.
NSCalendar *calender = [NSCalendar autoupdatingCurrentCalendar];
NSDateComponents *dateComponent = [[NSDateComponents alloc]init];
[dateComponent setYear:2020];
NSLog(@"%@",[calender dateFromComponents:dateComponent]);