各セクションのヘッダーのタイトルに現在のセクションのコンテンツの日付を表示するUITableViewがあります - 日付が今日のときを除いて今日は、日付昨日だったので、昨日と表示されます。セクションヘッダーのタイトルを更新する方法
これらのタイトルは静的ではないため、新しい日が来ると変更されます。その場合は、ヘッダーのタイトルを更新するために、下にスクロールする必要があります。
このヘッダーを真夜中に更新するにはどうすればよいでしょうか?
各セクションのヘッダーのタイトルに現在のセクションのコンテンツの日付を表示するUITableViewがあります - 日付が今日のときを除いて今日は、日付昨日だったので、昨日と表示されます。セクションヘッダーのタイトルを更新する方法
これらのタイトルは静的ではないため、新しい日が来ると変更されます。その場合は、ヘッダーのタイトルを更新するために、下にスクロールする必要があります。
このヘッダーを真夜中に更新するにはどうすればよいでしょうか?
IMHO真夜中以降にデータを自動的にリフレッシュしたり、毎回データを更新したりすることは、これが良い方法ではないと思います。あなたは、ユーザーが必要なときにいつでもそれをやり直すだけでなく、アプリケーションが起動されたとき、またはメインウィンドウが再び現れるときにデータをリロードすることができます。
あなたが本当に多分、この機能が必要な場合は、アプリを起動するたびに、あなたは深夜まで残された時間を計算することができ、あなたはリロード方法
timerNoTwo = [NSTimer scheduledTimerWithTimeInterval:secondsUntilMidnight target:self selector:@selector(refreshTableView) userInfo:nil NO];
そして
-(void)refreshTableView{ [tableView reloadData]; }
を発射する
NSTimer
を使用
本当の問題は、アプリがバックグラウンドになり、次の日に開くときに起こります。その後、アプリはちょうど最後の日から続き、ヘッダーは昨日からです。たぶん私は 'applicationDidEnterBackground'に日付を格納し、' applicationDidBecomeActive'にこの日付をチェックして、新しい日であるかどうかを確認する必要がありますか? – dhrm
なぜ、単にapplicationDidBecomeActiveでテーブルビューを更新しないのですか?アプリが1週間前に背景に入ったかどうかは関係ありません。とにかくリフレッシュするだけです。 –
おそらく[tableView reloadData];
を試して深夜の後にテーブルを更新してください。
iDifferentによると、テーブルビューのデータをリロードするだけですが、データをリロードするのが明日の場合は毎分確認する予定ですか? –
私はこれを確認する必要があるかどうかはわかりません。 1分ごとに確認するのは良い考えではありません。誰か推奨事項はありますか? – dhrm