2015-10-05 4 views
1

У меня есть приложение, которое имеет контроллер панели вкладок в качестве основного контроллера. Каждая вкладка имеет ряд представлений с контроллером навигации, и я нормально нажимаю и выхожу из этого представления в стеке.Отклонение Модифицированный представленный вид делает контроль панели вкладок (типа) сброса

Weird проблема заключается в

Случай 1: Если я создаю UINavigationController и сделать новый ViewController как его корень, и представить эту NavigationController. Внутри этого нового навигационного стека я могу легко представить точку зрения и отбросить ее без проблем.

Случай 2: теперь, не создавая новый UINavigationController, я представляю представление, и когда я отклоняю представление, вид ниже ведет себя странно. Например, представление представления было UICollectionView, оно просто прокручивается назад до 1-й ячейки, например, выполняет операцию «перезагрузить» и «прокручивает» первую ячейку. Если presentingView является толкаемым представлением от rootView, он будет просто popToRoot, который определенно не предназначен.

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

Я УГАДАЮ, когда вы отклоняете представление в представлении UITabbarController, это вроде как «СБРОС», все к самому первому виду текущей вкладки. Я действительно не уверен, что это просто потрясающе.

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

ответ

-1

Вы можете попробовать это, чтобы вернуться к первому диспетчеру просмотра.

- (IBAction)buttonPressedFromVC2:(UIButton *)sender 
 
{ 
 
    [self dismissViewControllerAnimated:YES completion:nil]; 
 
} // This is going back to VC1.

Этот метод будет во втором файле viewcontroller.m. Это метод нажатия кнопки.

+0

Благодарим вас за ответ, но это не вопрос о том, как отклонить представление. Уклонение от взгляда в порядке, представляющий viewcontroller ведет себя странно после отклонения представленного ими вида. – user3806731

4

Я сделал глупую ошибку, что я подклассифицирую UITabbarController и определяю навигационные контроллеры в viewDidAppear вместо viewdidLoad, поэтому, когда я создаю rootview окна для контроллера таблеток, навигационные контроллеры установлены неправильно. Вот почему все мелочные события произошли. Было бы лучше, если бы просто крушение вместо этого странного поведения.

+0

Это замечательно! Я сделал ту же глупую ошибку и не понял этого, пока не прочитал ваш пост. Огромное спасибо! –

+0

Такая же ошибка. Благодарю. – mra214