Я изо всех сил стараюсь объяснить, что происходит.
Я обновил XCode до Версия 10.1 (10B61)
И iOS на моем iPhone и симуляторе v 12.1
Мое приложение имеет TabController с 5 вкладками.
First: Posts
Fifth: Profile Posts
Они встроены в контроллер навигации (на случай, если кто-то
нажимает на кнопку комментариев)
Итак. Я заметил, что если я запускаю свое приложение и нажимаю на комментарии, оно странным образом выталкивает этот vc на экран, а затем щелкает назад, просто «ударяя» назад. Также слайд назад не работает.
Однако, если я сначала переключаю вкладки, то все работает нормально.
VIDEO:
https://www.youtube.com/watch?v=fgS3j21L8Js
Как вы видите на видео, все нормально после перехода на Профиль сообщений + назад.
ОБНОВЛЕНИЕ 1:
Так что, если я запускаю свое приложение, переключаюсь на другую вкладку, а затем возвращаюсь к оригиналу, все работает нормально.
запрашиваемый код:
func commentsButtonTapped(sender: UIButton) {
let touchPoint:CGPoint = sender.convert(CGPoint.zero, to:self.tableView)
if let indexPath = tableView.indexPathForRow(at: touchPoint) {
openDetails(indexPath: indexPath, shouldShowKeyboard: false)
}
}
func openDetails(indexPath: IndexPath, shouldShowKeyboard : Bool) {
if (self.tableView.cellForRow(at: indexPath) as? WorldMessageCell) != nil {
let storyboard = UIStoryboard(name: "Additional", bundle: nil)
let vc = storyboard.instantiateViewController(withIdentifier: "DetailsViewController") as! DetailsViewController
vc.postId = PostIds.shared.nearby.ids[safe: indexPath.row]
vc.shouldShowKeyboard = shouldShowKeyboard
self.navigationController?.pushViewController(vc, animated: true)
}
}
ОБНОВЛЕНИЕ 2:
Решил проблему, заставив TabController переключаться между вкладками.
override func viewDidAppear(_ animated: Bool) {
self.selectedIndex = 1
self.selectedIndex = 0
}
Но это не так, как должно работать ..
ОБНОВЛЕНИЕ 3:
Я проверил это, если я сделаю navigation controller
-> vc
начальным vc (так что без контроллера вкладок) все работает нормально.
Но как только навигационный контроллер вложен во вкладку, это происходит.
Я сделал новый проект для проверки, если это ошибка конкретной версии, но нет, там все отлично работает. Так что проблема должна быть с моим приложением.
Что может вызвать такую проблему (в видео)?