【发布时间】:2013-08-09 10:34:47
【问题描述】:
我是 iOS 开发的新手。
我在我的应用程序中只使用简单的UILocalNotification。我从UIDatePicker 得到开火日期,其中有
self.datePicker.datePickerMode = UIDatePickerModeTime
当我通过UIDatePicker 设置时间时,我想根据UIDatePicker 时间触发日期
我得到的是
NSLog(@"%@", self.datePicker.date);
控制台: 2013-08-09 10:28:30 +0000 --------> (我弄错了时间。)
所以,我将这次转换为 NSString by NSDateFormatter
NSDateFormatter *dateFormator = [[NSDateFormatter alloc] init];
[dateFormator setDateFormat:@"h:mm a"];
NSLog(@"%@", [dateFormator stringFromDate:self.datePicker.date]);
控制台: 下午 3:58 -------> (我的时间到了)
但是在NSLocalNotification 的fireDate 属性中,我需要将其值应用为NSDate,
所以我再次将 NSString (我得到了正确的时间) 转换为 NSDate。
NSDate *fireDate = [[NSDate alloc] init];
fireDate = [dateFormator dateFromString:[dateFormator stringFromDate:self.datePicker.date]];
控制台: 2000-01-01 10:28:00 +0000 -------> (我弄错了时间。)
这里的问题是我如何通过UIDatePicker(还有 am/pm) 在 NSLocalNotification 中设置适当的时间?
我只需要触发我在第二个控制台中得到的适当时间(如NSString)
请帮我解决这个问题。
【问题讨论】:
标签: iphone ios objective-c cocoa-touch notifications