[Swift] Beachten Sie, dass TableView nicht nur bestimmte Zellen löschen kann

Dieser Titel

Beim Erstellen einer bestimmten Funktion habe ich standardmäßig den Anfang (0) des Arrays und schreibe die Methode auf, die ich verwendet habe, als ich das Löschen dieses Werts unmöglich machen wollte. Der Inhalt ist einfach.

Weise

nur das. Legen Sie den Bearbeitungsstil jeder Zelle mit der Delegate-Methode von UITableViewDelegate fest. Dieses Mal kann nur die 0 nicht gelöscht werden, indem keine auf die 0 angewendet und Löschen auf eine andere als diese angewendet wird.

func tableView(_ tableView: UITableView, editingStyleForRowAt indexPath: IndexPath) -> UITableViewCell.EditingStyle {
    indexPath.row == 0 ? .none : .delete
}

Wenn swift eine Zeile in {} hat, kann die Rückgabe weggelassen werden. Schreiben Sie sie daher besser mit dem ternären Operator. Übrigens, wenn Sie es in if-Anweisung wie diese schreiben.

func tableView(_ tableView: UITableView, editingStyleForRowAt indexPath: IndexPath) -> UITableViewCell.EditingStyle {
    if indexPath.row == 0 {
        return .none
    }
    return .delete
}

das ist alles.

Recommended Posts

[Swift] Beachten Sie, dass TableView nicht nur bestimmte Zellen löschen kann
Beachten Sie, dass Systemeigenschaften einschließlich JAXBContext in Java11 nicht verwendet werden können