在我的應用程序中,我需要檢查用戶是否轉身18.我爲他提供了UIDatePickerView,並選擇了他的生日日期。我將它存儲在NSDate字段中。 如何檢查自他生日以來是否已經過了18年?如何檢查用戶是否在幾年前選擇了NSDate?
2
A
回答
10
[[[NSCalendar currentCalendar] components:NSYearCalendarUnit fromDate:birthDate toDate:[NSDate date] options:0] year]
或Jonathan Grynspan指出的那樣,這將是更好的:
NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
int years = [[gregorian components:NSYearCalendarUnit fromDate:birthDate toDate:[NSDate date] options:0] year];
[gregorian release];
,現在與ARC也可以是(過分)簡介:
int years = [[[[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar] components:NSYearCalendarUnit fromDate:birthDate toDate:[NSDate date] options:0] year];
-2
它應該這樣做像這樣:
NSTimeInterval interval = [birthday timeIntervalSinceNow];
if (interval > 18*365*24*60*60) {
NSLog(@"You're more than 18");
}
+1
這不包括bisextil年和持續時間 – 2011-02-28 15:58:25
+0
是的......我想這樣做,但很快就認識到同樣的問題。 – Lukasz 2011-02-28 16:07:58
相關問題
- 1. 如何檢查用戶是否選擇了UISegmentedControl?
- 2. 如何檢查在AngularJS中是否選擇了選擇
- 3. 如何檢查用戶是否在微調框中選擇了一個選項
- 4. 如何檢查是否在JavaScript中選擇了任何選項
- 5. jQuery:如何檢查是否在選擇框中明確選擇了否選項
- 6. 如何檢查是否選擇了多個選擇框
- 7. 如何檢查在硒中是否選擇了extjs複選框?
- 8. 如何檢查在DataGridView上是否選擇了任何行?
- 9. 如何檢測是否選擇了div?
- 10. 檢查是否選擇了Entry Widget
- 11. 檢查是否選擇了UIButton
- 12. 檢查是否選擇了ComboBox值
- 13. 檢查是否選擇了setOnItemClickListener
- 14. 檢查是否選擇了UIControlState
- 15. 檢查是否選擇了JTextfield
- 16. 如何檢查所有選擇框是否使用jQuery選擇了選項?
- 17. 如何檢查是否使用Jquery選擇了文件?
- 18. 如何檢查在NSIS中是否選擇了一個組件?
- 19. 如何檢查是否選擇了多個複選框
- 20. 如何檢查是否選擇了單選按鈕之一?
- 21. 如何檢查是否選擇了選項按鈕
- 22. 如何檢查是否從GridView中選擇了任何行?
- 23. 在使用之前檢查NSDate是否有效
- 24. 如何檢查是否選擇字段
- 25. 如何檢查PageLoad後是否選擇了RadioButton-Item?
- 26. 如何檢查是否選擇了2個Jradiobutton?
- 27. 如何檢查是否選擇了保管箱項目?
- 28. JS/Jquery:如何檢查下拉列表是否選擇了值?
- 29. 如何檢查JFileChooser是否選擇了一個文件?
- 30. 如何檢查是否從下拉框中選擇了值?
小心--'currentCalendar'是不保證是格里高利/太陽能。它在很多國家都是陰曆的。您需要特別使用格里曆日曆進行年齡計算。 – 2011-02-28 16:00:23
完美。沒有檢查,當然沒有正確的解決方案。 – Lukasz 2011-02-28 16:36:48