1

私は問題があります。説明する前に、いくつかのことを説明させてください。いっぱいになるまでに 604,800 の状態があるプログレス バーがあります。これが 1 週間の秒数であり、1 秒が経過するたびにプログレス バーを 1 ずつ上げていきます。私と一緒に?

さて、ここに私の問題があります。私の自作のプログレス バーは秒単位なので、iPhone の時間を秒に変換し、それに応じてプログレス バーを表示する必要があります。これはまた、日曜日の真夜中にリセットされます (何日が週の最終日であるかに応じてユーザーが日を変更できますが、違いはありません)。たとえば、月曜日の午前 5 時 (日曜日の真夜中の 18,000 秒後) の場合、プログレス バーは 18,000 番目の状態になります。

どうすればこれを達成できますか? 最初に [NSDate date] を変換する必要があると思います。秒に変換し、毎週リセットされる int に各秒を追加します。

これは本当に紛らわしいですが、うまく説明できたと思います。誰でも私を助けることができますか?

ありがとうございました!

4

1 に答える 1

0

を使用し- (NSTimeInterval)timeIntervalSinceDate:(NSDate *)anotherDateます。あなたの場合、次のようなものです:

NSDate *previousSunday = [self previousSunday]; // you still need to define this method.
NSDate *now = [NSDate date];
NSTimeInterval secondsFromSunday = [now timeIntervalSinceDate: previousSunday];

メソッドの実装方法については、前の日曜日の午前 12:00 の日付を動的に作成するをご覧previousSundayください。

于 2013-08-10T12:42:15.533 に答える