ios - uitableviewcell - xamarin table




So erstellen Sie NSIndexPath für TableView (3)

Ich brauche Zeile 1 einer Tabelle in einer Funktion zu löschen, die ich definiert habe. Um deleteRowAtIndexPath zu verwenden, deleteRowAtIndexPath Sie einen IndexPath mit einem definierten Abschnitt und einer definierten Zeile verwenden. Wie kann ich einen Indexpfad wie diesen erstellen?

Ein Array mit dem int {1} als einzigem Element wird abstürzen; Die NSLog-Nachricht besagt, dass der Abschnitt ebenfalls definiert werden muss.

* Bearbeiten -> Code zum Löschen von Zellen:

    NSIndexPath *myIP = [[NSIndexPath alloc] indexPathForRow:0 inSection:0];
    NSArray *myArray = [[NSArray alloc] initWithObjects:myIP, nil];
//  [self.tableView beginUpdates];
    [self.tableView deleteRowsAtIndexPaths:myArray withRowAnimation:UITableViewRowAnimationFade];
//  [self.tableView endUpdates];

Für Swift 3 ist es jetzt: IndexPath(row: rowIndex, section: sectionIndex)


Obligatorische Antwort in Swift: NSIndexPath(forRow:row, inSection: section)

Sie werden feststellen, dass NSIndexPath.indexPathForRow(row, inSection: section) in swift nicht verfügbar ist und Sie die erste Methode verwenden müssen, um den indexPath zu erstellen.


indexPathForRow ist eine Klassenmethode!

Der Code sollte lauten:

NSIndexPath *myIP = [NSIndexPath indexPathForRow:0 inSection:0] ;




nsindexpath