Ich bin ein UITableViewController
in meiner App implementieren und ich möchte eine Möglichkeit zum Verschieben/Wischen einer Zelle auf meinem Tableview hinzufügen, genau wie in dieser Antwort: Swipe-able Table View Cell in iOS 9 aber mit einem Unterschied, dass es nur für eine bestimmte Zelle funktioniert, nicht alle von ihnen. Bisher habe ich:Gibt es eine Möglichkeit, EditActionsForRowAtIndexPath nur für eine bestimmte UITableViewCell in Swift zu implementieren?
class MyTableViewController: UITableViewController {
override func tableView(tableView: UITableView, canEditRowAtIndexPath indexPath: NSIndexPath) -> Bool {
return true
}
override func tableView(tableView: (UITableView!), commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: (NSIndexPath!)) {
}
override func tableView(tableView: UITableView, editActionsForRowAtIndexPath indexPath: NSIndexPath) -> [UITableViewRowAction]? {
var deleteAction = UITableViewRowAction(style: .Default, title: "Hello There!") {action in
print("some action!!")
}
return [deleteAction]
}
}
und es fügt die swiping für alle Zellen und ich möchte es nur hinzufügen, in die 3. auf meiner Liste (Zellen werden nicht dynamisch generiert). Gibt es eine Möglichkeit, das zu tun?
aber ist die 'ein int indexPath', die ich zu Nummer 3 vergleichen? oder wie genau könnte ich das in diesem Fall machen? – randomuser1
Sie können 'indexPath.row' mit 3 – dan
Ok vergleichen, also habe ich:' if (indexPath.row == 2) {var deleteAction = UITableViewRowAction (...} else {return nil} 'aber immer noch ist es möglich zu gleiten Jede Zelle. Mit dieser Lösung in meiner dritten Zelle sehe ich die Zeichenfolge 'Hallo! 'und wenn ich die anderen ziehe, sehe ich die Zeichenfolge' Löschen '. Gibt es eine Möglichkeit, die Möglichkeit, die anderen Zellen zu verschieben, vollständig zu entfernen? :) – randomuser1