我在问这个问题之前已经搜索过,但一无所获。我正在使用此代码在我的应用中安排通知:
let firstFormatter = NSDateFormatter()
firstFormatter.dateFormat = "MMMM, dd, HH:mm"
let date = "\(dueDateTxtField.text) \(notificationTimeTxtField.text)"
let fireDate = firstFormatter.dateFromString(date)
let realNotification = UILocalNotification()
realNotification.fireDate = fireDate
realNotification.soundName = UILocalNotificationDefaultSoundName
realNotification.alertTitle = "Homework reminder"
realNotification.alertBody = "You have a pending \(subjectTxtField.text) homework for tomorrow."
let secondFormatter = NSDateFormatter()
secondFormatter.dateFormat = "yyyy"
let falseNotification = UILocalNotification()
falseNotification.fireDate = secondFormatter.dateFromString("2020")
falseNotification.soundName = UILocalNotificationDefaultSoundName
falseNotification.alertTitle = "This notification will never get to you"
falseNotification.alertBody = "Never"
if notifyMeSegmentedControl.selectedSegmentIndex == 0 {
UIApplication.sharedApplication().scheduleLocalNotification(realNotification)
} else {
UIApplication.sharedApplication().scheduleLocalNotification(falseNotification)
}
我正在使用UISegmentedControl,因此用户可以选择是否接收通知。问题是,只要我添加一个新的家庭作业(该应用程序是一个家庭作业应用程序,你添加一个主题,描述等),我已经收到通知,即使我将“notificationTimeTxtField”设置为一个时间不是现在。
请告诉我我做错了什么。 提前谢谢!
编辑:我已经尝试打开火灾日期并且它没有打!!我不明白为什么,文本字段中有文字!答案 0 :(得分:0)
我修好了。问题是dueDateTxtField的格式如下:“MMMM,dd,yyyy”,我试图将其格式化为“MMMM,dd”。所以我通过使用相同的格式格式化它来修复它并且它完美地工作。