코드를 확인한 결과 prepareForSegue
이라는 행이 이미 didSelectRowAtIndexPath
에서 선택 취소 된 것이 문제라고 생각합니다. . 당신이하지 세포와 테이블보기 사이를 뷰 컨트롤러 사이의 SEGUE를 연결해야 작동이 접근
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
[self.contTableView deselectRowAtIndexPath:indexPath animated:YES];
[self performSegueWithIdentifier:@"NextTable" sender:indexPath];
}
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([[segue identifier] isEqualToString:@"NextTable"]) {
NSIndexPath *indexPath = (NSIndexPath*)sender
contact = self.contactsToShow[indexPath.row];
[segue.destinationViewController setPhoneNumbers:contact.numbers];
}
}
위해 : 여기 가장 좋은 방법은 같은 performSegue
방법 무언가로 didSelectRowAtIndexPath에서 선택한 인덱스 경로를 보낼 수 있다고 생각 제어 장치.
더 구체적 일 수 있습니까? 여기에 질문이 없습니다. 달성하고자하는 것은 무엇입니까? – danypata
@danypata 연락처마다 다른 tableview에서 전화 번호를 보내려고하지만 목록의 첫 번째 연락처에서 항상 전화 번호를 보냅니다. 목록에서 두 번째 연락처를 클릭하면 (즉 위에서 아래로의 순서) 다른 컨트롤러에 첫 번째 연락처와 동일한 번호를 여전히 보냅니다. – Anton