2016-03-07 3 views
0

Я новичок в Objective C, и у меня есть проблема между моим Table View Controller и ViewController. Когда я нажимаю на ячейку, ничего не происходит, я не заходил в контроллер своего вида, чтобы иметь более подробную информацию о моей ячейке.ObjectiveC> Segue между TableView и ViewController

Я использую нажимной SEGUE и не забудьте дать ему идентификатор и сделать эту часть кода в моем TableView:

(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { 
    if ([segue.identifier isEqualToString:@"showDetails"]) { 
     NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow]; 
     ViewController *destViewController = segue.destinationViewController; 
     destViewController.details = data [indexPath.row]; 
    } 
} 

Моя связь между моими двумя точками зрения между прототипом ячейки и Окно ViewController.

ответ

2

в didSelectRowAtIndexPath:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
    { 
     [self performSegueWithIdentifier:@"showDetails" sender:self]; 
    } 

в prepareForSegue:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender 
{ 
    if ([segue.identifier isEqualToString:@"showDetails"]) 
    { 
     NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow]; 
    ViewController *destViewController = segue.destinationViewController; 
    destViewController.details = data [indexPath.row]; 
    } 
} 
+0

Я думаю, что теперь он хочет пойти в представлении, однако у меня есть эта ошибка, когда я запустить приложение> «Получатель () не имеет значения с идентификатором 'showDetails' ' –

+0

@ Guillaume.M - какое ваше имя соединения segue, если оно неверно? ShowDetails –

+0

Когда я нажимаю на сегмент, я указываю ему идентификатор showDetails –

Смежные вопросы