0
我遇到的問題是,我成功地安排了1到2小時的本地通知從現在開始,然後返回到我的主要根視圖控制器,其中運行一些代碼,根據是否安排本地通知顯示不同的框。因此,代碼爲:計劃本地通知iOS中沒有看到scheduledLocalNotifications馬上
/// Commit notification
[[UIApplication sharedApplication] scheduleLocalNotification:localNotification];
[self performSegueWithIdentifier:@"exitToStart" sender:self];
然後是主根控制器上的方法被稱爲馬上就返回刷新包含的觀點:
NSArray *currentNotifications = [[UIApplication sharedApplication] scheduledLocalNotifications];
if ([currentNotifications count] > 0)
{
...
}
else { ... }
我遇到的問題是,有時currentNotifications count是0,有時它是1,所以顯示錯誤的框。我認爲發生了什麼有時iOS仍在調度通知,有時不是,假設它在後臺執行而不阻塞線程?
我知道本地通知總是到達那裏,因爲如果我出現問題時出現問題,那麼它總是會找到本地通知。
有沒有一種方法可以等待它被安排在查找通知之前?這符合Apple的準則。在if塊中,我繼續使用通知中的信息。