【发布时间】:2010-11-13 10:36:17
【问题描述】:
你能告诉我如何从 UIDatePicker 中提取日期,我已经提取了月份但我无法提取日期,请帮帮我
谢谢
【问题讨论】:
标签: iphone objective-c xcode uidatepicker
你能告诉我如何从 UIDatePicker 中提取日期,我已经提取了月份但我无法提取日期,请帮帮我
谢谢
【问题讨论】:
标签: iphone objective-c xcode uidatepicker
只需访问对象的date 属性即可提取NSDate 对象:
NSDate *dateFromPicker = [someDatePicker date];
如果您想提取有关某人选择的月份、日期和年份的详细信息,这有点复杂(但只是一点点)。解决方案是使用 NSCalendar 参考 - 您可能想要使用 Gregorian。
NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIdentifier: NSGregorianCalendar];
现在您应该使用无符号整数单位标志来指定要从日期中提取的单位(即日、月日、年、纪元等)。使用按位 |选择多个单位标志:
unsigned unitFlags = NSYearCalendarUnit | NSMonthCalendarUnit;
现在创建一个日期组件对象:
NSDateComponents *components = [calendar components: unitFlags fromDate: dateFromPicker];
从此组件日期开始,您现在可以提取您在 unitFlags 整数中提到的整数值:
int year = [components year];
int month = [components month];
在此类组件对象中未定义所有其他属性(即日期、日期、纪元等) - 请记住,您只能提取您明确表示要提取的内容。
最后,释放日历对象以避免内存泄漏:
[calendar release];
希望这会有所帮助。 有关详细信息,请参阅 Apple 参考: http://developer.apple.com/library/ios/#documentation/Cocoa/Conceptual/DatesAndTimes/DatesAndTimes.html
【讨论】:
您可以访问UIDatePicker 类的date 属性来获取日期!
【讨论】: