-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 に答える