Segue не выполняется ios - PullRequest
       1

Segue не выполняется ios

0 голосов
/ 21 марта 2012

У меня есть приложение для iOS, которое позволяет пользователю подключаться к нашему серверу и выполнять несколько задач. Это прекрасно работает, пока я не решил добавить ошибку и заставить ее вернуться к предыдущему контроллеру представления. Я создал переход с Идентификатором segShowError, который должен быть выполнен и отправить пользователя обратно на родительский экран. В настоящее время segue является модальным, как и тот, который идет от первого контроллера ко второму. Странно то, что я столкнулся с такой же трудностью раньше, когда использовал толчок и я исправил ее, используя вместо этого модал. Вот код, который «должен» выполнять переход.

NSData *data = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
if(error != nil)
{
    NSLog(@"Error was %@",error);
    return;
}
else if([data length] <= 0)
{
    NSLog(@"No data received, going back");
    [self performSegueWithIdentifier:@"segShowError" sender:self];
}

И тогда у меня есть метод prepareForSegue, он определит, какое сообщение об ошибке отправить родителю, но сейчас просто регистрирует сообщение.

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    NSLog(@"Preparing for segue");
}

Мой вывод

2012-03-21 13: 14: 39.148 SSPColorImprov [17401: f803] Данные не получены, возврат

2012-03-21 13: 14: 39.149 SSPColorImprov [17401: f803] Подготовка к переходу

Я думаю, что эти два сообщения указывают на то, что передача выполняется, но я могу ошибаться.

Нет зарегистрированных ошибок, нет предупреждений в проекте и не выдается никаких исключений. Есть идеи, что может быть причиной проблемы?

1 Ответ

3 голосов
/ 22 марта 2012

Чтобы отклонить представление, которое представлено модально, вам нужно отклонить его, вызвав - dismissViewControllerAnimated:completion: вместо использования segues. например,

// used to be dismissModalViewControllerAnimated: but deprecated in iOS 5
[self dismissViewControllerAnimated:YES completion:nil];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...