6

UIViewがあり、新しい日に表示したいのですが、たとえば、今日アプリを起動すると、そのUIViewが表示されますが、その後は明日までそのUIViewが表示されません。

では、UIViewを表示するのが新しい日かどうかを判断する方法を知りたいですか?

4

1 に答える 1

17

UIApplicationSignificantTimeChangeNotification通知に登録する必要があります。

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(timeChange) name:UIApplicationSignificantTimeChangeNotification object:nil];

次に、timeChangeメソッド(またはあなたがそれを呼び出すもの)でビューを更新します。

登録を解除することを忘れないでください:

[[NSNotificationCenter defaultCenter] removeObserver:self name:UIApplicationSignificantTimeChangeNotification object:nil];

この通知は、ユーザーがデバイスの時刻を変更した場合、またはタイムゾーンが変更された場合に、深夜に送信されます。変更が発生したときにアプリがバックグラウンドにある場合、アプリがフォアグラウンドに戻ったときに通知が届きます。

于 2012-10-30T00:58:51.560 に答える