Warnung vor dem Löschen der UITableView-Zelle - (UIAlertController) Swift oder Objective-C

8

Ich möchte eine Tabellenansichtszelle löschen, aber bevor diese Aktion stattfindet, möchte ich dem Benutzer eine Warnmeldung geben. Ich habe das:

%Vor%

Aber jetzt, wenn ich nach rechts auf die Zelle wische und die Lösch-Schaltfläche erscheint, habe ich keine AlertView. Ich bekomme nur die AlertView, wenn ich auf den Löschen-Button drücke. Wenn ich auf die Schaltfläche zum Löschen drücke, erscheint die Nachricht, aber die Zelle wurde bereits gelöscht.

Wie funktioniert das? So gibt es eine AlertView, wenn ich wische.

    
user1883396 12.01.2013, 20:39
quelle

4 Antworten

16

Bezüglich der Reihenfolge ist alles in Ordnung. commitEditingStyle wird nur aufgerufen, wenn die Löschtaste bereits gedrückt wurde. Der Punkt ist, dass Sie das Objekt tatsächlich entfernen, bevor auf die Warnung reagiert wird. Ändern Sie es zu diesem:

Fügen Sie dies der .m-Datei vor @implementation :

hinzu %Vor%

Und dann:

%Vor%

Edit: Dies sollte wahrscheinlich trotz geringfügiger Syntaxfehler kompilieren. Allgemeiner Überblick: Sie haben es nur mit einem Abschnitt zu tun. Zumindest sind nur eine Sektion innerhalb von Löschungen möglich.

    
Hermann Klecker 12.01.2013, 20:54
quelle
3

iOS 8 +

iOS 8 eingeführt UIAlertController . Dadurch können Sie Ihren Lösch- und Löschcode in Abschlussblöcken anstatt in Delegatmethoden schreiben (gemäß -clickedButtonAtIndex des alten UIAlertView ).

Schnell 3

%Vor%

Ziel-C

%Vor%     
MattyG 21.03.2016 06:54
quelle
2

Sie rufen die Warnung auf, wenn die Löschaktion bereits stattfindet ....

Platziere es:

%Vor%

Das ruft die Warnung auf, wenn die Zelle durchsucht wird und bevor die Taste gedrückt wird.

    
Dana K 12.01.2013 20:58
quelle
0

iOS 9.0 und Swift 2.3

%Vor%     
Frankie 16.08.2016 19:08
quelle