Objective c 在目标C中计算截止日期/时间前90分钟的时间(iPhone应用程序)

Objective c 在目标C中计算截止日期/时间前90分钟的时间(iPhone应用程序),objective-c,ios4,Objective C,Ios4,这是一个完全没有意义的问题,但我昨天花了两个小时试图让它发挥作用,显然我遗漏了一些非常基本的东西 我需要做的是从日期/时间的用户那里获取输入,并为警报倒计时90分钟 是否有人可以发布一个计算示例,其中您有一个保存用户输入的var和一个接收此计算结果的新var?(全部在Objective C中完成,用于iPhone应用程序)谢谢 我认为这应该行得通: NSDate * alarmDate = [NSDate dateWithTimeInterval:5400 sinceDate:userDefin

这是一个完全没有意义的问题,但我昨天花了两个小时试图让它发挥作用,显然我遗漏了一些非常基本的东西

我需要做的是从日期/时间的用户那里获取输入,并为警报倒计时90分钟


是否有人可以发布一个计算示例,其中您有一个保存用户输入的var和一个接收此计算结果的新var?(全部在Objective C中完成,用于iPhone应用程序)谢谢

我认为这应该行得通:

NSDate * alarmDate = [NSDate dateWithTimeInterval:5400 sinceDate:userDefinedDate];
NSDate * now = [NSDate date];   
NSTimeInterval wait = [now timeIntervalSinceDate:alarmDate];

[self performSelector:@selector(callAlarm) withObject:nil afterDelay:fabs(wait)];

虽然我也同意Nick的观点,但增加你的工作会更有成效。

我认为这应该行得通:

NSDate * alarmDate = [NSDate dateWithTimeInterval:5400 sinceDate:userDefinedDate];
NSDate * now = [NSDate date];   
NSTimeInterval wait = [now timeIntervalSinceDate:alarmDate];

[self performSelector:@selector(callAlarm) withObject:nil afterDelay:fabs(wait)];

虽然我也同意Nick的观点,但添加您的工作会更有效率。

假设您有一个
UIDatePicker
,您的目标日期将已经在
NSDate
对象中。如果它来自另一个源,您可能会在NSDate对象中找到它,或者通过
NSDateFormatter
或其他方式从字符串中找到它


从NSDate对象中,可以获得相对于某个绝对日期的
NSTIMEIVAL
。这是一种C原语类型(实际上是一种
double
,但显然不需要依赖它来编写代码),您可以直接对其进行算术运算。所以你可以直接从中减去90分钟。然后,NSDate上有各种各样的
+dateWithTimeInterval…
类方法,允许您从结果中获取日期。

假设您有一个
UIDatePicker
,您的目标日期将已经在
NSDate
对象中。如果它来自另一个源,您可能会在NSDate对象中找到它,或者通过
NSDateFormatter
或其他方式从字符串中找到它


从NSDate对象中,可以获得相对于某个绝对日期的
NSTIMEIVAL
。这是一种C原语类型(实际上是一种
double
,但显然不需要依赖它来编写代码),您可以直接对其进行算术运算。所以你可以直接从中减去90分钟。然后,NSDate上有各种各样的
+dateWithTimeInterval…
类方法,允许您从结果中获取日期。

我想您可以执行以下操作:

NSDate *alertDate = [userDate dateByAddingTimeInterval:-5400.0];

我想你可以做一些类似的事情:

NSDate *alertDate = [userDate dateByAddingTimeInterval:-5400.0];

要求某人为你提供工作并不如提供你在具体问题上尝试过的具体例子那样有效。我们不是来为你写代码的。我同意@Nick的观点。如果你花了两个小时在这上面,你肯定有一些代码可以分享。问我们你做错了什么比问一个完整的例子要有效得多。尼克,当我了解你的感受时。。。我尝试的一切都是垃圾。在这方面没有任何正式培训,我在寻找写作风格,就像我在寻找一个有效的代码示例一样。这不是为了工作。我会把这些批评考虑进去……要求别人为你提供工作并不如提供你在具体问题上尝试过的具体例子那样有效。我们不是来为你写代码的。我同意@Nick的观点。如果你花了两个小时在这上面,你肯定有一些代码可以分享。问我们你做错了什么比问一个完整的例子要有效得多。尼克,当我了解你的感受时。。。我尝试的一切都是垃圾。在这方面没有任何正式培训,我在寻找写作风格,就像我在寻找一个有效的代码示例一样。这不是为了工作。我会考虑这些批评。。。