2016-02-28 44 views
-2

您好,我正在嘗試在年齡限制18歲以下的日期選取器,在日期選擇器中選擇出生日期,然後我想要我的代碼來計算該人是18歲還是年齡越大,就可以進入下一步。日期選擇器的年齡驗證IOS Swift

到目前爲止我的代碼看起來是這樣的:

@IBAction func veryfyButton(sender: AnyObject) { 

    var myDateConverterObject = NSDateFormatter() 

    let formatter = NSDateFormatter() 

    let dateAsDate = datePicker.date 

    let dateAsNow = NSDate() 

    let interval = dateAsNow.timeIntervalSinceDate(dateAsDate) 

    let convertedDate = myDateConverterObject.stringFromDate(dateAsNow) 


    print(interval/1000) 



} 
+5

你的問題是什麼? – sschale

回答

1

你的變量名就沒有任何意義了我。如果你想從日期選擇器計算用戶的年齡:

@IBAction func verifyButton(sender: AnyObject) { 

    let dateOfBirth = datePicker.date 

    let today = NSDate() 

    let gregorian = NSCalendar(calendarIdentifier: NSCalendarIdentifierGregorian)! 

    let age = gregorian.components([.Year], fromDate: dateOfBirth, toDate: today, options: []) 

    if age.year < 18 { 
     // user is under 18 
    } 
} 
+0

非常感謝! ...這讓我非常瞭解使用NSCalendar。 Tyvm! :) –

+0

我試過使用這種算法,但它不需要考慮幾個小時和區域 – Jargen89