NSFetchRequest
numaralı siparişi vermek istiyorum. Ben tarihi almak için bir UIDatePicker
kullanmak veNSFetchRequest tarihine ve ardından alfabetik sıraya göre sırala
[self.managedObject setValue:self.datePicker.date forKey:self.keypath];
Çekirdek Verileri kullanarak kaydedin ve bunun gibi NSFetchRequest
sıralamak:
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];
Şimdi benim sorunum sadece tarihe göre değil, sipariş olmasıdır adından da anlaşılacağı gibi, UIDatePicker
, Çekirdek Verilerde saklanır, ancak saat de. Aynı gün bile olsa, aynı günde "isim" ile sıralanmadığı için saat farklıdır. Öyleyse, çekirdek verilere yalnızca UIDatePicker
'dan saat değil, saat/gg/yyyy tarihini nasıl kaydederim?
Yoksa başka bir çözüm var mı?
Tarihi bu saatten kaldırmanız gerekir. http://stackoverflow.com/questions/4187478/truncate-nsdate-objective-c –
Başka bir şey için zaman bilgisine mi ihtiyacınız var? Eğer değilse, çekirdek veri nesnesinin zamanını ayarlarken zaman bileşenlerini 0'a ayarlayabilirsiniz. İhtiyacınız varsa, zaman bileşenleri olmadan NSDate veya bir yyyymmdd dizesi kullanan başka bir özellik eklemeniz gerekir. –