Có vẻ như tôi không thể trừ 7 ngày từ ngày hiện tại. Đây là cách tôi đang làm:
NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDateComponents *offsetComponents = [[NSDateComponents alloc] init];
[offsetComponents setDay:-7];
NSDate *sevenDaysAgo = [gregorian dateByAddingComponents:offsetComponents toDate:[NSDate date] options:0];
SevenDaysAgo nhận cùng giá trị với ngày hiện tại.
Xin vui lòng giúp đỡ.
CHỈNH SỬA: Trong mã của tôi, tôi đã quên thay thế biến có ngày hiện tại bằng biến đúng. Vì vậy, mã trên là chức năng.
[NSDate dateWithTimeIntervalSinceReferenceDate:[NSDate date].timeIntervalSinceReferenceDate - (7*24*60*60)]
- Mặc dù nó không xử lý các thay đổi DST.