如果有人感到困惑,并认为这是我昨天的问题的重复,那不是.在那里我问每天如何调用一个函数,在这里我问的是如何在每天的特定时间调用通知.
我正在寻找一种方法,每天早上7点重复本地通知.我目前有这个代码设置来获取日,月,年等.
let date = NSDate()
let calendar = NSCalendar.currentCalendar()
let components = calendar.components(.CalendarUnitHour | .CalendarUnitMinute | .CalendarUnitMonth | .CalendarUnitYear | .CalendarUnitDay, fromDate: date)
let hour = components.hour
let minutes = components.minute
let month = components.month
let year = components.year
let day = components.day
Run Code Online (Sandbox Code Playgroud)
当时间是早上7点,我如何每天拨打通知?
首先像你一样创建日历对象:
var calendar = NSCalendar()
var calendarComponents = NSDateComponents()
calendarComponents.setHour(7)
calendarComponents.setSeconds(0)
calendarcomponents.setMinutes(0)
calendar.setTimeZone(NSTimeZone.defaultTimeZone)
var dateToFire = calendar.dateFromComponents(calendarComponents)
Run Code Online (Sandbox Code Playgroud)
现在我们可以每天安排通知.
localNotification.fireDate = dateToFire
localNotification.setTimeZone(NSTimeZone.defaultTimeZone)
localNotification.setRepeatInterval(kcfCalendarUnitDay)
Run Code Online (Sandbox Code Playgroud)
语法可能不完美,我是从Obj-C翻译的,但你应该得到一般的想法.
Yed*_*iss -3
var now = NSDate()
var calendar = NSCalendar.currentCalendar()
var components = calendar.components(.CalendarUnitHour | .CalendarUnitMonth | .CalendarUnitYear | .CalendarUnitDay, fromDate: now)
var d = NSCalendar.currentCalendar().dateFromComponents(components)
if components.hour > 6 {
d = NSDate(timeInterval: 60*60*24, sinceDate: d!)
}
var n = UILocalNotification()
n.fireDate = d
n.repeatInterval = NSCalendarUnit.CalendarUnitDay
n.alertBody = "This is dayly notification"
UIApplication.sharedApplication().scheduleLocalNotification(n)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3802 次 |
| 最近记录: |