swift 中的 noHistory 等价物,没有以前的视图控制器
noHistory equivalent in swift, no previous view controller
我有 ListViewController 和其中的 tableView。
当我点击一个项目时,会显示新的视图控制器,列表视图控制器中的表视图也会显示在其中等等。
例如 ListViewController -> ExpensesViewController -> VideoViewController。
无论我在哪里,我都想在按下后退箭头时返回到 ListViewController。我只想在切换到下一个视图控制器后从堆栈中删除前一个。
您的 UINavigationController
有一个数组 UIViewController
。
所以你只需要删除这个数组中的控制器。
据我了解,当您点击 VieoViewController
中的后退按钮时,您想返回到 ListViewController。
因此,在推送 VideoViewController
之后,您必须从导航控制器的数组中删除 ExpensesViewController
(例如 VideoViewController
的 viewDidAppear
)
var viewControllers = navigationController?.viewControllers
viewControllers?.remove(at: 0)
self.navigationController?.setViewControllers(viewControllers!, animated: false)
我有 ListViewController 和其中的 tableView。 当我点击一个项目时,会显示新的视图控制器,列表视图控制器中的表视图也会显示在其中等等。 例如 ListViewController -> ExpensesViewController -> VideoViewController。
无论我在哪里,我都想在按下后退箭头时返回到 ListViewController。我只想在切换到下一个视图控制器后从堆栈中删除前一个。
您的 UINavigationController
有一个数组 UIViewController
。
所以你只需要删除这个数组中的控制器。
据我了解,当您点击 VieoViewController
中的后退按钮时,您想返回到 ListViewController。
因此,在推送 VideoViewController
之后,您必须从导航控制器的数组中删除 ExpensesViewController
(例如 VideoViewController
的 viewDidAppear
)
var viewControllers = navigationController?.viewControllers
viewControllers?.remove(at: 0)
self.navigationController?.setViewControllers(viewControllers!, animated: false)