在特定时间在Iphone中显示警报/通知(由用户或开发人员设置)

时间:2011-06-07 21:41:42

标签: ios ios4 uialertview uidatepicker

我想知道使用什么IOS功能来让我在iphone上的特定时间显示警报/通知。时间将由用户或开发人员使用UIDatePicker设置。运行Local Notification Tutorial时,警报/通知仅在应用程序处于后台时显示(如果我错了,请更正我)

如果有人可以帮我解决这个问题会很棒。

2 个答案:

答案 0 :(得分:1)

所以我认为你在这里走的正确:不确定我还能添加什么。

您可以使用本地通知在任何给定时间显示提醒。正如您在本教程中看到的那样,当您的应用程序位于前台时,不会触发通知。

但是当您的应用处于前台时,没有什么能阻止您在应用中编写代码以提醒用户:这可能更为理想。您可能希望利用在前台提供给您的UI选项来执行不同的操作,或者您可以只显示自己的UIAlertView。

答案 1 :(得分:0)

我可以给你我的简短代码,以便在特定的时间内安排... 我试图计算一个特定的月份时间。 实施例(从1-1-2011到2-1-2011,0:0:00 am)。 在我居住的地方,我对GMT有2小时的尊重。

dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateStyle:NSDateFormatterLongStyle];


components = [[NSDateComponents alloc] init];
NSCalendar *gregorian = [NSCalendar currentCalendar];
[components setMonth:1];
[components setHour:0];
[components setMinute:0];
[components setSecond:0];
dategre = [gregorian dateByAddingComponents:components toDate:[datePicker date]  options:0];

//These steps below are important to put your specific date, in this case specific hour
selected2 = [dateFormatter stringFromDate:dategre];
dategre = [dateFormatter dateFromString:selected2];

//你会在调试器控制台上看到这样的东西: //datePicker.date = 2011-01-01 08:42:16 GMT // dategre = 2011-01-31 22:00:00 GMT(对我们来说,这相当于凌晨0:00:00的2-1-2011)

我希望我能帮到你,

再见,

威利。