Desidero ordinare un NSFetchRequest
prima per data e poi, se corrisponde allo stesso ordine del giorno per nome. Io uso un UIDatePicker
per ottenere la data e l'salvarlo utilizzando Core DataOrdina NSFetchRequest per data e quindi in ordine alfabetico
[self.managedObject setValue:self.datePicker.date forKey:self.keypath];
e ordinare la NSFetchRequest
in questo modo:
NSSortDescriptor *sortDescriptor1 = [[NSSortDescriptor alloc] initWithKey:@"day" ascending:NO];
NSSortDescriptor *sortDescriptor2 = [[NSSortDescriptor alloc] initWithKey:@"name" ascending:NO];
NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptor1, sortDescriptor2, nil];
[fetchRequest setSortDescriptors:sortDescriptors];
Ora il mio problema è che essere ordinata solo per data e non per nome perché il UIDatePicker
memorizzato in dati di base la data, ma anche l'ora. Quindi, anche se lo stesso giorno, non ordinato per "nome" nello stesso giorno perché l'ora è diversa. Quindi, come faccio a salvare nei dati principali solo la data mm/gg/aaaa e non l'ora da uno UIDatePicker
?
Oppure pensi ad altre soluzioni?
È necessario rimuovere l'ora dalla data. http://stackoverflow.com/questions/4187478/truncate-nsdate-objective-c –
hai bisogno di informazioni sull'ora per qualcos'altro? In caso contrario, è possibile impostare i componenti del tempo su 0 quando si imposta l'ora dell'oggetto dati principale. Se necessario, è necessario aggiungere un altro attributo che utilizza NSDate senza componenti temporali o una stringa yyyymmdd. –