0

X日ごとにカウントするコードをプログラムするにはどうすればよいですか。あるNSDateから別のNSDate(今日)までの毎週月曜日(または木曜日など)を数えるように。私は知っています、チェックすることによってNSDateの日を取得する方法

    $int weekday = [[NSCalendar currentCalendar]components:NSWeekdayCalendarUnit fromDate:myDate]weekday];

しかし、これは少し役に立ちません…</ p>

(もちろん、私はすべての日と/ 7を計算することができましたが、これは私が取り組んでいる私のプロジェクトでは機能していません…)

4

1 に答える 1

2

NSDate最初から始まり最後で終わるwhileループを実行しますNSDate。毎回1日ずつインクリメントし、その日が目的の日と等しいかどうかを確認します。

int counter = 0;
while ([NSDate laterDate:earlyDate:lateDate] == lateDate)
{
     int weekday = [[NSCalendar currentCalendar]components:NSWeekdayCalendarUnit fromDate:earlyDate]weekday];
     if (weekday == desiredWeekday) counter++;
     earlyDate = [earlyDate dateByAddingTimeInterval:3600*24];
}
于 2012-07-31T17:29:33.063 に答える