I need to save two date (a date range) to NSUserDefaults.
The range needs to be unique in the list of dates stored ?
I need to save two date (a date range) to NSUserDefaults.
The range needs to be unique in the list of dates stored ?
You can save NSDate
objects to the user defaults. Do something like this:
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:firstDate forKey:@"StartDate"];
[defaults setObject:secondDate forKey:@"EndDate"];
That's based on this question of yours, right? The DateRange class provided as my answer to that question implements -isEqual:
and -hash
methods, so you can use DateRange objects in an NSSet. NSSet guarantees uniqueness of its members based on -isEqual:
(see NSSet's documentation for details). All you need is to put a number of DateRange objects into an NSMutableSet, encode the set with NSKeyedArchiver and store the resulting NSData object in NSUserDefaults.