[ios] UITableView의 선택된 인덱스 가져 오기

에 대한 색인을 선택하고 싶습니다 UITableView. 다음 코드를 작성했습니다.

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

이것은 항상 첫 번째 항목에서 작동합니다. 색인을 선택하고 싶습니다.indexPathForRow.

도와주세요. 감사.



답변

NSIndexPath *selectedIndexPath = [tableView indexPathForSelectedRow];


답변

현재 선택된 행을 가져옵니다. 섹션이 하나만있는 경우 유용 할 수 있습니다.

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


답변

이 코드 사용

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


답변

didSelectRowAtIndexPath에서 NSIndexPath로 선언 된 인터페이스를 반환 된 indexpath로 설정합니다. 그런 다음 해당 변수로 스크롤 할 수 있습니다. 도움이 필요하면 댓글을 달면 샘플 코드를 줄 수 있습니다.


답변

스위프트 4.2

let selectedIndexPath = tableView.indexPathForSelectedRow

선택적 반환 값입니다.


답변