Apples Dokumentation besagt, dass für eine UITableView, die mit einer "Edit/Done"-Schaltfläche bearbeitet werden kann, die Schaltfläche jedes Mal erstellt und zerstört werden sollte, wenn sie umgeschaltet wird.
Hier ist ein Codeschnipsel des "BonjourWeb"-Beispielprojekts, das dies tut:
if (editing) {
// Add the "done" button to the navigation bar
UIBarButtonItem *doneButton = [[UIBarButtonItem alloc]
initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(doneAction:)];
self.navigationItem.leftBarButtonItem = doneButton;
[doneButton release];
[self addAddButton:YES];
} else {
if ([self.customs count]) {
// Add the "edit" button to the navigation bar
UIBarButtonItem *editButton = [[UIBarButtonItem alloc]
initWithBarButtonSystemItem:UIBarButtonSystemItemEdit target:self action:@selector(editAction:)];
self.navigationItem.leftBarButtonItem = editButton;
[editButton release];
}
Ist dies wirklich besser, als nur den Titel der Schaltfläche zu bearbeiten? Gibt es eine Leistungsoptimierung, die ich nicht sehe? Oder ist dies nur eine schlechte Beispielquelle?