Einstellung UITableView Header von NSFetchedResultsController
Ich habe eine NSFetchedResultsController
was abrufen von Objekten von einem NSManagedObjectContext
. Ich bin mit den Ergebnissen füllen Sie einen UITableView.
Ich bin Filterung mit diesen beiden Art-Deskriptoren.
NSSortDescriptor *lastOpened =
[[NSSortDescriptor alloc] initWithKey:@"lastOpened" ascending:NO];
NSSortDescriptor *titleDescriptor =
[[NSSortDescriptor alloc] initWithKey:@"title" ascending:YES];
Und wenn ich die NSFetchedResultsController
ich die Sortierung der Abschnitte über sectionNameKeyPath:@"lastOpened"
.
Recht jetzt mein Abschnitte-display die standard-format, wie 2009-07-02 20:51:27 -0400 und da es keine zwei können zur gleichen Zeit geöffnet, Sie sind alle einzigartig. Ich brauche Sie, um die Abdeckung Auswahl von Datum/Zeit, wie einen ganzen Tag, und werden in eine lesbare form. So etwas wie Donnerstag, 2. Juli.
Dank!
Edit:
Dies ist alle innerhalb einer UITableViewController
. Hier sind einige weitere code.
- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section {
//Display the dates as section headings.
return [[[fetchedResultsController sections] objectAtIndex:section] name];
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
id <NSFetchedResultsSectionInfo> sectionInfo = [[fetchedResultsController sections] objectAtIndex:section];
return [sectionInfo numberOfObjects];
}
- Sind Sie mit Bindungen zum füllen der Tabelle oder hast du geschrieben eine Datenquelle für UITableView?
- Der Fragesteller ist für die Entwicklung für das iPhone, also kann es nicht sein-Bindungen, wie, den es nicht gibt in Cocoa Touch. developer.apple.com/IPhone/library/documentation/Miscellaneous/...
- Sollten Sie filtern die Ergebnisse durch die Einstellung
NSPredicates
Ihre gefundenen Ergebnisse-controller, btw. Sie können immer noch irgendwie mehr als eine Art und Weise, aber wenn Sie nur wollen, um bestimmte Objekte, bei denen bestimmte "Eigenschaften " wahr" (D. H. ein Prädikat erfüllt ist), dann verwenden Sie NSPredicates.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Landete ich eine neue Eigenschaft hinzufügen
day
zu meinemNSManagedObject
Unterklasse um einen formatierten Datum-string.Sythesize die dateFomatter.
@synthetisieren dateFormatter;
Initialisiere ich die Datumsformatierung in awakeFromFetch und awakeFromInsert.
Den accessor für
day
.Ich dann meine Namen für den Abschnitt ein Schlüsselpfad zu betrachten
day
; Sie sollten nicht brauchen, um änderungen zu machen auf Ihre Art-Deskriptoren.Habe ich nicht hatte eine chance zu Graben, in das Gebiet der SDK noch (meine Arbeit ist mit C#, damit das iPhone Zeug ist in meiner hobby-Zeit), aber was ich sagen kann, würden Sie wollen, um die anderen init, speziell initWithKey:aufsteigend:selector: und für den Selektor könnte passieren Sie eine Auswahl, um deine compare-Methode, die würde nur Vergleiche auf das Jahr/Monat/Tag, ignorieren Zeit.
Hier ist die url für den Bezug: iPhone-Bibliothek-Dokumentation
Hoffe, das hilft!