-1

当当前时间等于在 UIDatePicker 中选择的时间时,我需要发送一条短信。我该怎么做?您不需要包含发送消息的代码,我已经编码了。我已经用 NSTimer 和 if - then 语句尝试了各种各样的东西,但都没有奏效。

编辑:自从我写了这个问题以来,我找到了一种更好的做事方式。我只需要设置一个本地通知,并在收到时使用 -(void)didRevieveLocalNotification 执行我的代码。这是我所拥有的,希望可以帮助任何谷歌员工。

NSDate *pickerDate = [self.datePicker date];
    //Set Local Notification
    UILocalNotification *notif = [[UILocalNotification alloc] init];
    notif.fireDate = pickerDate;
    notif.timeZone = [NSTimeZone defaultTimeZone];
    //----------------------------------------------------------------------
    notif.alertBody = @"Tap to send your text message!";
    notif.alertAction = @"send message...";
    notif.soundName = @"sms_alert_nova.caf";
    notif.applicationIconBadgeNumber = [[UIApplication sharedApplication] applicationIconBadgeNumber] + 1;
    [[UIApplication sharedApplication] scheduleLocalNotification:notif];
4

1 回答 1

1

好吧,我会使用本地通知...像这样

UILocalNotification *notification = [[UILocalNotification alloc] init];
notification.fireDate = theDate //The date that your picker has selected

notification.alertBody = @"Hey, the time just expired!"
notification.applicationIconBadgeNumber = 1;

[[UIApplication sharedApplication] scheduleLocalNotification:notif];

然后在你的 AppDelegate

- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification {

//Code to manage the notification logic


}

希望这会有所帮助,即使在后台用户也会收到警报。如果在后台用户必须单击警报以让您的应用程序知道触发了本地通知,如果他这样做(或者他已经在您的应用程序上,那么应用委托方法将触发让您的应用知道通知已触发...

希望这可以帮助!

于 2013-08-16T16:11:13.150 回答