4 Stimmen

Das editButtonItem des UIViewController ändert sich nicht beim Swipe zum Löschen

Ich benutze UIViewController's editButtonItem, um den Bearbeitungsmodus in meiner Tabelle zu steuern.

Das Problem ist, dass in den meisten Apps, wenn man eine Zeile zum Löschen nach links wischt, dieser Bearbeitungsbutton in den Zustand "Fertig" wechselt. Auf diese Weise kann der Benutzer auf "Fertig" tippen, um das Löschen von Elementen zu stoppen.

Fertig-Button in einer Wisch-zum-Löschen Situation

Bildbeschreibung eingeben

In meiner App passiert das nicht

Bildbeschreibung eingeben

Ich könnte den Titel und Stil des Bearbeitungsbuttons in tableView:editingStyleForRowAtIndexPath: ändern, aber sollte der Sinn von UIViewController's editButtonItem nicht automatisch sein?

Danke.

3voto

Mark Punkte 2714

Die Implementierung dieser beiden Delegate-Methoden hat das Problem für mich gelöst. Setzen Sie die .editing-Eigenschaft des View-Controllers auf YES und dann wieder auf NO.

- (void)tableView:(UITableView *)tableView willBeginEditingRowAtIndexPath:(NSIndexPath *)indexPath
{
    self.editing = YES;
}

- (void)tableView:(UITableView *)tableView didEndEditingRowAtIndexPath:(NSIndexPath *)indexPath
{
    self.editing = NO;
}

1voto

jrturton Punkte 115612

Es ist nur automatisch, wenn die UIViewController-Eigenschaft .editing JA ist. Wenn Sie nur eine Zeile bearbeiten, befindet sich der Ansichtscontroller selbst nicht im Bearbeitungsmodus, daher ändert er die Schaltfläche nicht.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X