ユーザーがアプリをしばらく開いていない場合、ローカル通知を使用しているアプリを使用しています。
ユーザーがローカル通知を介してアプリを開くと、DB が更新され、ユーザーのアカウントにクレジットが付与され、「余分なクレジットがあります」というアラートが表示されます。
DB でクレジットが更新される ユーザーが [OK] をクリックしてもビューコントローラーが更新されず、その時点でラベルに更新されたクレジットが表示されません。
別のビューに移動して戻ってくると、それが表示されます。
ユーザーが AlertView から [OK] をクリックしたときに更新されたスコアを取得するにはどうすればよいですか?
前もって感謝します....
編集
[[UIApplication sharedApplication]cancelAllLocalNotifications];
NSDate *today=[NSDate date];
NSLog(@"%@",today);
NSDateFormatter *dateFormat1 = [[NSDateFormatter alloc] init];
[dateFormat1 setDateFormat:@"dd-MMM-yyyy hh:mm:ss a"];
NSTimeInterval secondsInEightHours = 20;
NSString *tt=[dateFormat1 stringFromDate:today];
//tt=@"20-Apr-2013 06:39:32 PM";
NSDate *Ass_date=[dateFormat1 dateFromString:tt];
Ass_date=[Ass_date dateByAddingTimeInterval:secondsInEightHours];
NSLog(@"%@",tt);
NSLog(@"%@",today);
NSLog(@"%@",Ass_date);
//[[UIApplication sharedApplication]cancelAllLocalNotifications];
UILocalNotification *localNotif1 = [[UILocalNotification alloc] init];
[[UIApplication sharedApplication]cancelLocalNotification:localNotif1];
if (localNotif1 == nil)
return;
localNotif1.fireDate = Ass_date;
localNotif1.timeZone = [NSTimeZone defaultTimeZone];
// Notification details
localNotif1.alertBody = @"You have not played for a long time. Play and get 250 Stars credits for free!";
// Set the action button
localNotif1.alertAction = @"Get It Now";
localNotif1.soundName = UILocalNotificationDefaultSoundName;
//localNotif.applicationIconBadgeNumber = 1;
//localNotif1.applicationIconBadgeNumber ++;
// Schedule the notification
[[UIApplication sharedApplication] scheduleLocalNotification:localNotif1];
[localNotif1 release];
これは、viewcontroller の ViewDidAppear で行ったコードです。
今、アプリケーション didReceiveLocalNotificationのデリゲートで: アラートを表示しました。
[self localNotif];
////NSLog(@"Recieved Notification %@",localNotif);
UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"" message:@"250 Stars have been credited to your account" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
[alert show];
[alert release];
}
アラートの [OK] ボタンをクリックすると、View Controller を更新または再読み込みしたい。