我对
swift很新,我正在尝试调用多个函数来请求UISwitch IBAction中的本地通知.我想在某个日期发送通知 – 一年中的每个季度在第4,7,10,1个月.只有第四季度功能被调用.如何调用所有四个函数?这是我的代码:
// UISwitch用于季度通知
@IBAction func quarterlyFrequencyTapped(_ sender: UISwitch) { if quarterlyFrequency.isOn == true { firstQuarter(); secondQuarter(); thirdQuarter(); fourthQuarter() print("quarterly frequency is \(quarterlyFrequency.isOn)") } else { removeQuarterlyNotification() print("quaterly frequency is \(monthlyFrequency.isOn)") } }
//所有四个季度的功能
func firstQuarter() { let firstQuarterContent = UNMutableNotificationContent() firstQuarterContent.title = "First Quarter" firstQuarterContent.subtitle = "Some string" firstQuarterContent.body = "Some other string" var firstQuarterDate = DateComponents() firstQuarterDate.month = 3 firstQuarterDate.day = 11 firstQuarterDate.hour = 19 firstQuarterDate.minute = 20 let firstQuarterTrigger = UNCalendarNotificationTrigger(dateMatching: firstQuarterDate,repeats: true) let firstQuarterRequestIdentifier = "Quarterly" let firstQuarterRequest = UNNotificationRequest(identifier: firstQuarterRequestIdentifier,content: firstQuarterContent,trigger: firstQuarterTrigger) UNUserNotificationCenter.current().add(firstQuarterRequest,withCompletionHandler: nil) } func secondQuarter() { let secondQuarterContent = UNMutableNotificationContent() secondQuarterContent.title = "Second Quarter" secondQuarterContent.subtitle = "Some string" secondQuarterContent.body = "Some other string" var secondQuarterDate = DateComponents() secondQuarterDate.month = 3 secondQuarterDate.day = 11 secondQuarterDate.hour = 19 secondQuarterDate.minute = 21 let secondQuarterTrigger = UNCalendarNotificationTrigger(dateMatching: secondQuarterDate,repeats: true) let secondQuarterRequestIdentifier = "Quarterly" let secondQuarterRequest = UNNotificationRequest(identifier: secondQuarterRequestIdentifier,content: secondQuarterContent,trigger: secondQuarterTrigger) UNUserNotificationCenter.current().add(secondQuarterRequest,withCompletionHandler: nil) } func thirdQuarter() { let thirdQuarterContent = UNMutableNotificationContent() thirdQuarterContent.title = "Third Quarter" thirdQuarterContent.subtitle = "Some string" thirdQuarterContent.body = "Some other string" var thirdQuarterDate = DateComponents() thirdQuarterDate.month = 3 thirdQuarterDate.day = 11 thirdQuarterDate.hour = 19 thirdQuarterDate.minute = 22 let thirdQuarterTrigger = UNCalendarNotificationTrigger(dateMatching: thirdQuarterDate,repeats: true) let thirdQuarterRequestIdentifier = "Quarterly" let thirdQuarterRequest = UNNotificationRequest(identifier: thirdQuarterRequestIdentifier,content: thirdQuarterContent,trigger: thirdQuarterTrigger) UNUserNotificationCenter.current().add(thirdQuarterRequest,withCompletionHandler: nil) } func fourthQuarter() { let fourthQuarterContent = UNMutableNotificationContent() fourthQuarterContent.title = "Fourth Quarter" fourthQuarterContent.subtitle = "Some string" fourthQuarterContent.body = "Some other string" var fourthQuarterDate = DateComponents() fourthQuarterDate.month = 3 fourthQuarterDate.day = 11 fourthQuarterDate.hour = 19 fourthQuarterDate.minute = 23 let fourthQuarterTrigger = UNCalendarNotificationTrigger(dateMatching: fourthQuarterDate,repeats: true) //let trigger = UNTimeIntervalNotificationTrigger(timeInterval: 60,repeats: true) let fourthQuarterRequestIdentifier = "Quarterly" let fourthQuarterRequest = UNNotificationRequest(identifier: fourthQuarterRequestIdentifier,content: fourthQuarterContent,trigger: fourthQuarterTrigger) UNUserNotificationCenter.current().add(fourthQuarterRequest,withCompletionHandler: nil) }
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。