2017-07-23 153 views
-5

我正在爲IOS創建鬧鐘應用程序。長話短說,我已經配置DatePicker只顯示小時和分鐘。添加1日至日期

我的問題是,當用戶輸入6:00 AM時,我希望它是在第二天早上,Xcode現在假設它是同一天。

EX:用戶在週三晚上10點睡覺,並在週四早上6點設置鬧鐘。我的應用程序假設早上6點是指星期三。我怎樣才能解決這個問題?

+0

你到目前爲止做了哪些研究?你寫了什麼代碼?此問題包含解決問題所需的所有信息(例如:創建日期組件以在當天添加1):https://stackoverflow.com/q/24089999/558933 –

回答

0

獲得下一次出現時間的最可靠的方法是的Calendar,因爲它也考慮夏令時更改。

假設datePickerNSDatePicker實例:

let date = datePicker.date 

let calendar = Calendar.current 
// get hour and minute components of the given date 
let components = calendar.dateComponents([.hour, .minute], from: date) 
// calculate the next occurrence of the date components from now 
let nextOccurrence = calendar.nextDate(after: Date(), matching: components, matchingPolicy: .nextTime) 
0

我喜歡用AFDateHelper庫個人。

import AFDateHelper 

let tomorrowDate = dateFromPicker.adjust(.day, offset: 1)