2014-09-13 5 views
0

Я пишу приложение iOS, которое использует сервис Parse. Когда я нажимаю на ячейку, она не отступает, как я ожидал. Похоже, мой метод «prepareForSegue» не вызывается. Я использовал точки останова, чтобы определить это, и NSLog никогда ничего не выводит. Вот мой метод:Segues не работает (Table view/navigation controller/tab controller)

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender 
{ 
    // Get the new view controller using [segue destinationViewController]. 
    // Pass the selected object to the new view controller. 
    NSLog(segue.identifier); 
    if ([segue.identifier isEqualToString:@"showObjectDetails"]) { 
     NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow]; 
     //OfferDetailViewController *destViewController = segue.destinationViewController; 
     PFObject *object = [self.objects objectAtIndex:indexPath.row]; 
     [segue.destinationViewController setObject:object]; 
    } 

} 

Название Segue является «showObjectDetails», если это имеет значение, и это идет из списка. Я использовал серию выбора Push. Я убедился, что пользовательский класс правильно установлен в Interface Builder. Я использую контроллер панели вкладок, который ссылается на NavigationController, который затем отображает табличное представление.

+1

Как вы телеграфировать свой SEGUE в раскадровке? – vacawama

ответ

0

Убедитесь, что идентификатор Segue установлен на раскадровке, как показано ниже.

Segue Identifier

+0

Мой интерфейс выглядит несколько иначе (у него нет опции Destination), но у меня есть стиль, заданный Push, и идентификатор также установлен правильно. – user2078519

+0

Try: '[само performSegueWithIdentifier: @ "showObjectDetails" Отправитель: отправитель];' – carlodurso

+0

В связи с этим метод делегата: '(аннулируются) Tableview: (UITableView *) Tableview didSelectRowAtIndexPath: (NSIndexPath *) indexPath' – carlodurso

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