1

私は遊んでいてNSDates、2つの日付が同じ週にあるかどうかを比較する必要があります. これまでのところ、 を使用して[NSDateComponents week]、それらが互いに 1 週​​間以内にあるかどうかを確認できました。ただし、代わりに、それらが月の同じ週にあるかどうかを確認できる必要がありますweek 1 {monday-sunday}week 2 {monday-sunday}.

これはiOSで可能ですか?

4

1 に答える 1

1

はい。

これは疑わしいように聞こえますが、宿題のようです。これはあなたが望むものだと思いますが、それを第 3 週 (または何でも) の一部にしたいだけで、どの月にあるかは問題ではありません。月の部分を取り出すことができます。

// Assume date1 and date2 are NSDates

NSCalendar *cal = [NSCalendar currentCalendar];

NSDateComponents *date1Components = [cal components:(NSMonthCalendarUnit | NSWeekCalendarUnit) fromDate:date1];
NSDateComponents *date2Components = [cal components:(NSMonthCalendarUnit | NSWeekCalendarUnit) fromDate:date2];

if (date1Components.week == date2Components.week &&
    date1Components.month == date2Components.month) {
    // same week of same month
} else {
    // either different week or different month (or both)
}

詳細については、Apple のDate and Time Programming Guide を参照してください。

于 2013-02-27T15:44:43.650 に答える