Привет, я очень новичок в программировании на iOS и играю с датами (сегодняшняя дата и дата через 1 год).Борьба за сохранение даты для последующего использования
Вот код, которым я занимаюсь.
NSCalendar * calendar = [NSCalendar currentCalendar];//Create a calendar
NSDate *todaysDate = [[NSDate alloc]init]; //get todays date
NSString *dateToday = [NSString stringWithFormat:@"%@",todaysDate];//convert it to a string
NSDateFormatter *df = [[NSDateFormatter alloc] init];// create a formatter
[df setDateFormat:@"yyyy-MM-dd HH:mm:ss ZZZ" ];//input how the date looks as a string
myDate = [df dateFromString: dateToday];// change it back to a proper NSDate
NSDateComponents *components = [[NSDateComponents alloc] init]; // create the components
[components setYear:1];//add 1 year
nextYear = [calendar dateByAddingComponents:components toDate:todaysDate options:0]; // build the year from component into a variable
dateNextYear = [NSString stringWithFormat:@"%@",nextYear];//convert it to a string
NSDateFormatter *yearFormat = [[NSDateFormatter alloc] init];// create a formatter
[yearFormat setDateFormat:@"yyyy-MM-dd HH:mm:ss ZZZ" ];//input how the date looks as a string
myDateInTheFuture = [yearFormat dateFromString: dateNextYear];// change it back to a proper NSDate
NSLog(@" next years date is %@ ", myDateInTheFuture);
[yearFormat release];
[components release];
[todaysDate release];
я могу получить текущую дату и будущую дату 1 год с этого момента, но я не уверен, как я бы сохранить будущую дату для сравнения, я знаю, я могу использовать пункт «сравнить» для NSDate в check, но когда я устанавливаю будущую дату в переменную каждый раз, когда она запускается, она остается относительной на 1 год отдельно от того, что я проверяю, против которой находится сегодняшняя дата. Его 3am, где я и мой мозг - месиво, так извиняется заранее, если это самая простая вещь, и я просто не могу ее увидеть.
Его первое сообщение, так что прощайте меня, пожалуйста. Благодаря
Использование жестко запрограммированный интервал времени, чтобы настроить дату по N количеству дней/недель/лет/и т.д. это ужасная идея (тм), как есть множество особых случаев, которые должны быть приходилось. Пример: Самоа удаляет 30 декабря этого года. http://www.bbc.co.uk/news/business-13330592 Всегда используйте API-интерфейсы даты, чтобы выполнять календарные вычисления и сэкономить много времени на вытягивание волос в будущем. – MyztikJenz
спасибо hbhargava ответ, который я искал, был маршрут по умолчанию пользователя, я ценю, что вы нашли время, чтобы помочь мне, поскольку мне кажется, что я усложнил то, что мне нужно. ура – pidge