web-dev-qa-db-fra.com

Obtenir l'index sélectionné de UITableView

Je veux avoir sélectionné l'index pour UITableView. J'ai écrit le code suivant:

NSIndexPath *index = [NSIndexPath indexPathForRow:1 inSection:0];
[tableView scrollToRowAtIndexPath:index 
                 atScrollPosition:UITableViewScrollPositionTop 
                         animated:YES];

Cela fonctionne toujours pour le 1er élément. Je veux avoir sélectionné index dans indexPathForRow.

S'il vous plaît aider. Merci.

103
iOSDev
NSIndexPath *selectedIndexPath = [tableView indexPathForSelectedRow];
215
Chris Gummer

Obtenir la ligne sélectionnée actuelle. Peut être utile si vous n’avez qu’une section.

- (NSUInteger)currentSellectedRowIndex
{
    NSIndexPath *selectedIndexPath = [self.tableView indexPathForSelectedRow];
    if (selectedIndexPath) {
        return selectedIndexPath.row;
    }
    else {
        return NSNotFound;
    }
}
8
ZevsVU

Utilisez ce code

CGPoint location =[sender locationInView:self.tableView];
NSIndexPath *swipedIndexPath = [self.tableView indexPathForRowAtPoint:location];
UITableViewCell *swipedCell  = [self.tableView cellForRowAtIndexPath:swipedIndexPath];
NSIndexPath *indexPath = [self.tableView indexPathForCell:swipedCell];
5
Vineesh TP

Dans didSelectRowAtIndexPath, définissez une interface déclarée NSIndexPath lors du renvoi du chemin d'index. Ensuite, vous pouvez faire défiler jusqu'à cette variable. Si vous avez besoin d’aide, commentez et je peux vous donner un exemple de code.

4
Kolin Krewinkel

Swift 4.2

let selectedIndexPath = tableView.indexPathForSelectedRow

qui est une valeur de retour facultative.

1
davidrynn