Подтвердить что ты не робот

Условно после segue

В моем приложении у меня есть экран входа. Однако при подключении segue от кнопки входа в систему к следующему (настольному) контроллеру просмотра вы всегда можете продолжить, независимо от того, что вы вводите в качестве информации для входа. Как проверить регистрационную информацию, а затем решить, следует ли выполнять сеанс или нет, и как выполнить сеанс условно?

Можно ли добиться этого, работая с segue? Я знаю, что это может быть сделано программно, но тогда мне нужен другой контроллер навигации, потому что мне нужна панель навигации.

4b9b3361

Ответ 1

Вы можете подключить свою кнопку входа или что-то еще к некоторому коду IBAction, решить, должен ли логин действовать, а затем (если нужно) вы можете использовать performSegueWithIdentifier: для перехода к новому представлению.

Я написал еще одно сообщение об использовании этого метода здесь.

Ответ 2

В iOS 6 метод UIViewController shouldPerformSegueWithIdentifier:sender: решает эту проблему без ручного запуска.

Ответ 3

  • Создайте ручную секцию из "login", чтобы сказать "панель мониторинга"
  • Дайте имя для идентификатора segue, например. "ShowDashboard"
  • Подключите кнопку "Далее" для IBAction.
  • Вручную вызовите segue с идентификатором после выполнения всех ограничений.


- (IBAction)nextButtonPressed:(id)sender
{
    if ([self hasAllRequiredFields]) {
        [self performSegueWithIdentifier:@"showDashboard" sender:self];
    } 
}

Ответ 4

Это запоздало, но лучше всего установить setEnabled: ничто не вызывает срабатывание до тех пор, пока segue не будет "действительным". Это отделяет вашу логику segue от логики вашего представления....