如何检查“输入日期是过去的日期”

问题描述:

我需要检查输入日期[从用户输入的文本字段]是否过期。如何检查“输入日期是过去的日期”

感谢,

萨加尔

+0

更正了拼写。 – Konrad 2010-08-27 10:30:02

+0

比较:比接受的答案更好。 https://developer.apple.com/library/mac/documentation/Cocoa/Reference/Foundation/Classes/NSDate_Class/Reference/Reference.html#//apple_ref/occ/instm/NSDate/compare: – afollestad 2014-03-08 22:49:48

看一看reference文件
也有earlierDate:和laterDate:和isEqualToDate :.

你可以在这里找到他们的文档。

找到类似:

if ([today laterDate:expDate] == expDate) 
+0

请注意,isEqualToDate: “是一个非常难使用的野兽;除非接收者和参数是相同的'NSDate'实例,它的核心是做一个浮点比较,所以所有的标准注意事项都适用。 – 2010-08-27 15:03:16

+0

比较:效果更好。 https://developer.apple.com/library/mac/documentation/Cocoa/Reference/Foundation/Classes/NSDate_Class/Reference/Reference.html#//apple_ref/occ/instm/NSDate/compare: – afollestad 2014-03-08 22:49:30

  1. 转换到秒的日期,然后进行比较。
  2. 使用difftime如果你能提供的参数

可能有其他的方法了。另外,用户应该以指定的格式输入时间。我会建议使用下拉框或旋转小部件来使用一系列值。

+0

感谢Praveen的回复。 – 2010-08-27 10:32:38