Używam NSFetchedResultsController
i UITableViewController
aby wypełnić UITableView z bazy danych CoreData.NSPredicate i CoreData - zdecydować, czy atrybut Data jest „dziś” (lub od ostatniej nocy 12am dziś wieczorem 12am) na iOS
Mam obiekt NSDate
zapisany w tym atrybucie Data oznaczonym "startTime". Następnie próbuję jedynie wyciągnąć dane transmisji męska użyciu NSPredicate
, który wygląda tak:
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"startDate == %@",
todaysDate];
Dostaję zerowe wyniki. Rozumiem to, ponieważ obiekt NSDate
po prostu trzyma liczbę sekund lub milisekund, czy coś innego od 1 stycznia 1970 r., Prawda? Porównywanie 1111111111111 i 1111111111112, w tym samym dniu, są dwoma odrębnymi obiektami, które nie są równe.
Jak zatem można sformatować NSPredicate
, aby mógł to zrobić? Mam zamiar zgadnąć, że tworzy on dwa obiekty: jeden, który jest o północy wczoraj wieczorem, a drugi o tej porze o 12 rano i porównuje początek i koniec, czy jest pomiędzy tymi dwoma s. NSDate
.
Jestem nowy dla NSPredicate
, więc jak można to osiągnąć?
Należy umieścić swoje rozwiązanie w odpowiedzi, zamiast umieszczać ją w pytaniu. – yuji
Nie można @yuji, ponieważ nie mam jeszcze wystarczającej rep. –
Może w odpowiedzi możesz podać ** swoje ** rozwiązanie. W międzyczasie zredagowałem to widząc, ponieważ już zaakceptowałeś odpowiedź Yuji. Możesz odzyskać swoje rozwiązanie, przeglądając historię wersji. Dzięki. – Kev