1. ホーム
  2. ios

[解決済み] NSDateが今日であるかどうかを判断する方法は?

2022-04-26 10:01:15

質問

を確認する方法 NSDate は今日に属しているのでしょうか?

の最初の10文字でチェックしていました。 [aDate description] . [[aDate description] substringToIndex:10] のような文字列を返します。 "YYYY-MM-DD" で返される文字列と比較しました。 [[[NSDate date] description] substringToIndex:10] .

もっと早く、きれいにチェックする方法はないでしょうか?

ありがとうございます。

解決方法は?

macOS 10.9+ & iOS 8+では、NSCalendar/カレンダーに、まさにこれを実現するメソッドがあります。

- (BOOL)isDateInToday:(NSDate *)date 

つまり、単純に

Objective-Cです。

BOOL today = [[NSCalendar currentCalendar] isDateInToday:date];

Swift 3:

let today = Calendar.current.isDateInToday(date)