Ios 如何从NSDate获取当前日期、时间、年份?
情况是这样的 我有一个方法Ios 如何从NSDate获取当前日期、时间、年份?,ios,nsdatecomponents,Ios,Nsdatecomponents,情况是这样的 我有一个方法 + (NSDateComponents *)getTodayComponents { NSDate *today = [[NSDate alloc] init]; NSCalendar *calendar = [NSCalendar currentCalendar]; return [calendar components:NSCalendarUnitYear | NSCalendarUnitMonth fromDate:today]; }
+ (NSDateComponents *)getTodayComponents {
NSDate *today = [[NSDate alloc] init];
NSCalendar *calendar = [NSCalendar currentCalendar];
return [calendar components:NSCalendarUnitYear | NSCalendarUnitMonth fromDate:today];
}
通过它,我可以获得今天的日、月、年、小时、分钟等
现在我需要更改来自另一个NSDate
的日期、月份和年份,因此我的代码如下所示
- (void)datePickerView:(RSDFDatePickerView *)view didSelectDate:(NSDate *)date {
NSDate *today = [[NSDate alloc] init];
NSDateComponents *todayComponents = [Helper getTodayComponents];
self.transactionDate = date;
NSLog(@"%@", [date description]);
self.inputDateField.text = [[Helper getDateFormatterForClient] stringFromDate:self.transactionDate];
[self.inputDateField resignFirstResponder];
}
问题
如何从今天的
中获取年、日和月,以便在今天的组件中进行设置?根据我对您的查询的理解,您希望实现的是通过选择器获取的其他日期的组件,然后修改这些组件,以在UITextField中显示日期
因此,添加或修改现有方法
+ (NSDateComponents *)getTodayComponentsFromDate:(NSDate *)theDate {
NSCalendar *calendar = [NSCalendar currentCalendar];
return [calendar components:NSCalendarUnitYear | NSCalendarUnitMonth fromDate:theDate];
}
或者,如果您只想以特定格式显示从日期选择器中选择的日期,那么我建议您使用NSDateFormatter
来执行此操作。查看文档中的NSDateComponents
。各种组件都有明显的属性。您是指在选择器上选择的日期吗?-i、 e.参数日期
?只需将它传递给helper函数,并使用它而不是新的日期对象。