Как загрузить UIViewController условно, используя раскадровку и xcode 4.2 - PullRequest
1 голос
/ 06 марта 2012

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

Спасибо,

Ответы [ 4 ]

1 голос
/ 03 февраля 2015

1.5 другие варианты: если вы хотите разделить истории и перья, просто загрузите перо, когда хотите / нужно.Если вы хотите придерживаться исключительно историй, просто загрузите другую историю, когда вам это нужно.То же самое, что и загрузка пера:

UIStoryboard *otherStoryboard = [UIStoryboard storyboardWithName:@"OtherStory" bundle:nil];
UIViewController *otherController = [otherStoryboard instantiateInitialViewController];
[self.navigationController pushViewController: otherController animated:YES];
0 голосов
/ 06 марта 2012

Возможно, у вас есть действие, которое запускается, когда пользователь выбирает несколько блюд, не так ли?В этом действии вы бы назвали [UINavigationController pushViewController:nextViewController animated:YES] или что-то вроде этого.Поместите этот вызов функции в состояние вашего предпочтения, и покажите всплывающее окно в противном случае.

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

Я решил эту проблему, используя ответы из: Предотвратить переход в методе prepareForSegue? , связав переход с моим главным контроллером представления, затем подключив IBAction к кнопке, которая изначально была инициатором перехода, и выполнивлогика в этом методе.Если все прояснилось, я звоню [self performSegueWithIdentifier:@"results" sender:self];

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

Раз вы знаете в своем коде, хотите ли вы отображать следующий экран или нет, можете ли вы просто добавить оператор if, который либо загружает следующий экран, либо отображает предупреждение об отсутствии соединения?

if (hasConnection) {
  // Show next screen
} else {
  // Show warning
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...