2011-01-13 3 views
0

私はUILocalNotificationsを通して5分ごとにユーザーにヒントを送るアプリを開発しています。問題は、しばらくあなたの電話を使用しないと、通知が積み重なり、電話のロックを解除するときに、電話を使用していないとかなり迷惑になることがありますかなり長い間。アラートのアクションボタンをクリックすると、アプリケーションに戻りますが、それでもすべての通知を処理する必要があります。UILocalNotificationsを積む

ワンクリックで既に発生しているすべての通知を却下する方法はありますか?

ありがとうございました。あなたがより良い以前のすべての通知をキャンセルして、新しいものを設定するには次のアラームをスケジュールする前に

Mikyマイク

答えて

1

はまあ、実際に、私はミスを犯した実現します。コードの1行で十分です::

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

[[UIApplication sharedApplication] cancelAllLocalNotifications]; 
} 

をし、そこにある

1ですべてUIlocalNotificationsをキャンセルするために、私はちょうどこの簡単な方法を作成する必要があります。とにかくありがとう。

0

UIApplication* app = [UIApplication sharedApplication]; 
NSArray* oldNotifications = [app scheduledLocalNotifications]; 
// Clear out the old notification before scheduling a new one. 
if ([oldNotifications count] > 0) 
    [app cancelAllLocalNotifications]; 
+0

問題は、通知を受け取るたびにユーザーをアプリに戻す余裕がないため、applicationWillResignActiveで一度にすべての通知を開始することです。あなたのコードは既に起動されている通知を却下しますか?または、アラートのキャンセルボタンまたはアクションボタンに複数のタップをシミュレートする手段がありますか? –

関連する問題