2017-12-23 10 views
0

Ich habe 2 UITableView (Tabelle 1 & Tabelle 2). Ich möchte die Funktionalität in meiner Tabelle-2 bearbeiten.Wie Swipe deaktivieren bei gleichen UIViewController löschen Option bei UITableView

Ich habe Tableview Datasource-Methode in meiner Ansicht-Controller hinzugefügt, wie unten erwähnt: -

func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCellEditingStyle, forRowAt indexPath: IndexPath) { 
     if editingStyle == .delete { 

      tableView.beginUpdates() 
      myArray.remove(at: indexPath.row) 
      tableView.deleteRows(at: [indexPath], with: .fade) 
      tableView.endUpdates() 
     } 
    } 

und beide Tableview diese Methode aufrufen. So können alle Tabellenansichtszellen die Löschoption öffnen.

Aber ich möchte diese Bearbeitungsoption löschen nur in Tabelle-2. Ich möchte die Funktionalität zum Löschen von Bearbeitungsoptionen in Tabelle 1 einschränken.

Bitte helfen. Danke im Voraus.

Antwort

1

können Sie diese Funktion durch UITableViewDelegate bereitgestellt verwenden:

func tableView(_ tableView: UITableView, canEditRowAt indexPath: IndexPath) -> Bool { 
    return true 
} 

einfach eine gewisse Logik implementieren zu überprüfen, ob Sie mit der Bearbeitung bei der indexPath zulassen möchten gegeben und gegeben tableView und return true, wenn Sie mit der Bearbeitung wollen/Löschen und return false wenn du nicht.

Hoffe, das hilft!

Verwandte Themen