关于fireDate的UNNotificationTrigger

时间:2016-12-15 03:29:39

标签: triggers ios10 unnotificationtrigger

在iOS 10中,我使用新的frameWork UNNotification。当设置UNNotificationTrigger时,我想在UNNotification上设置一个触发日期。但我找不到在UNNotificationTrigger的属性中设置一个开火日期。那么如何在UNNotificationTrigger中设置一个触发日期。我想在UNNotificationTrigger中设置一个fire Date,我该如何设置

1 个答案:

答案 0 :(得分:3)

用户通知框架中有两种类型的触发器:

  1. UNTimeIntervalNotificationTrigger - 用于创建设置间隔时间的通知:

    30分钟内火(60秒30),

    let trigger = UNTimeIntervalNotificationTrigger(timeInterval: (30*60), repeats: false)
    
  2. UNCalendarNotificationTrigger-用于根据您的情况在特定日期创建通知,并重复使用特定条件:

    let date = DateComponents()
    date.hour = 8
    date.minute = 30 
    let trigger = UNCalendarNotificationTrigger(dateMatching: date, repeats: true)
    
  3. 解决方案(Swift 3)将您的日期转换为dateComponent,这可以通过以下方式完成:

    import UserNotifications
    
    var newComponents = Calendar.current.dateComponents([.year,.month,.day,.hour,.minute,.second,], from: date)
    
    let trigger = UNCalendarNotificationTrigger(dateMatching: newComponents, repeats: false)