Мое приложение запускается с видом с некоторыми кнопками. Я хочу перейти к различным представлениям в зависимости от нажатой кнопки и передать им разные параметры.
Моя раскадровка выглядит следующим образом:
.
Как видите, нажатие кнопки в главном представлении вызывает представление таблицы, встроенное в контроллер навигации. И это вызывает у меня много проблем!
Сначала я не знаю, выбрал ли я правильный подход, или я должен запустить свое приложение с контроллером навигации вместо представления (я пробовал это решение, но на своей домашней странице я не хочу навигационную панель, а также делает ее видимой или нет, визуально не очень приятно).
Если вы подтвердите осуществимость моего первоначального подхода, как я могу перейти к нужному виду, также передавая некоторые параметры?
------ Изменить:
Я наконец нашел рабочее решение. Контроллер навигации является первым контроллером в моем приложении. Представления связаны со стандартным переходом.
На моем домашнем виде:
- (void)viewWillAppear:(BOOL)animated
{
[[self navigationController] setNavigationBarHidden:YES animated:YES];
}
В моем табличном представлении:
- (void)viewWillAppear:(BOOL)animated
{
[[self navigationController] setNavigationBarHidden:NO animated:YES];
}
Таким образом, когда вы нажимаете кнопку, новый вид отображается с анимацией, которая аналогична панели навигации. И то же самое происходит, когда вы нажимаете кнопку «Назад» в представлении таблицы.
Больше не нужно никаких строк кода !!!
Единственная зависимость, которую вы можете сделать, чтобы сделать ее совершенной, - это управлять первой загрузкой приложения, чтобы скрыть панель навигации в домашнем виде без анимации.
Яс