我有一个视图控制器作为我的初始视图控制器。 有一个按钮(GO按钮),当用户点击时,它应该去另一个视图控制器(我们称之为目标视图控制器与标签'这是我想去')。同时我想通过一个Tabbar控制器。原因是我想我的导航堆栈中有tabbar,当用户在目标视图控制器上按下时,它必须转到tabbar控制器。图片显示了我想要的。我可以在导航堆栈中跳过tabbar的时候做些什么?导航通过视图控制器,而跳过一个 - iOS
0
A
回答
1
你可以做到这一点很容易GO按钮的IBAction
内:
@IBAction func goTapped(_ sender: UIButton) {
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let vc1 = storyboard.instantiateViewController(withIdentifier: "myTabBarViewController")
let vc2 = storyboard.instantiateViewController(withIdentifier: "myGoalViewController")
let controllers = [vc1, vc2]
self.navigationController!.setViewControllers(self.navigationController!.viewControllers + controllers, animated: true)
}
祝你好运!
1
将DestinationViewController可以手动:
if let destinationViewController = self.storyboard?.instantiateViewController(withIdentifier: "Storyboard ID of DestinationViewController") {
self.navigationController?.pushViewController(destinationViewController, animated: true)
}
而在你DestinationViewController,插入(或者,你可以直接在故事板制作SEGUE从FirstViewController到DestinationViewController) TabbarController到导航序列在视图后手动出现,然后您可以返回到TabbarController:
class DestinationViewController: UIViewController {
//......
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
if self.isBeingPresented || self.isMovingToParentViewController {
var viewControllers = self.navigationController?.viewControllers
if let index = viewControllers?.endIndex.advanced(by: -1),
let tabBarController = self.storyboard?.instantiateViewController(withIdentifier: "Storyboard ID of TabBarController") {
viewControllers?.insert(tabBarController, at: index)
self.navigationController?.viewControllers = viewControllers!
}
}
}
//......
}
相关问题
- 1. UI块,而在推视图控制器导航控制器
- 2. 多个导航控制器中的视图控制器通信
- 3. UIButton在导航回父视图时跳入标签栏视图控制器 - iOS
- 4. ios swift - 关闭导航控制器的根视图控制器
- 5. 另一个导航控制器和视图控制器问题
- 6. 如何通过另一个视图控制器启动视图控制器?
- 7. iOS - 通过代码加载导航控制器
- 8. CodeIgniter从另一个视图通过控制器加载视图
- 9. 传递一个值通过导航控制器
- 10. 将视图控制器从一个视图控制器移动到另一个视图控制器而无需导航控制器堆栈
- 11. 从导航栏视图控制器导航到标签栏视图控制器
- 12. 如何从一个视图控制器导航到Xamarin ios中的第二个视图控制器?
- 13. 在呈现第一个视图后导航视图控制器
- 14. 从主视图控制器钻通过
- 15. 导航控制器创建2个视图而不是1
- 16. 上分离视图控制器呈现视图控制器,而导航到其他屏幕的ios迅速
- 17. 在视图控制器内添加多个导航控制器?
- 18. 如何导航到iPhone中的下一个视图控制器
- 19. 通过siri打开视图控制器
- 20. 只能在图库上通过手势导航一个视图
- 21. 如何以编程方式导航到视图控制器,并通过数据
- 22. 如何通过视图导轨将信息从一个控制器传递到另一个控制器
- 23. 从另一个视图控制器通知视图控制器
- 24. 使用静态变量与通过视图控制器? iOS
- 25. 如何通过按钮从一个视图控制器推到另一个视图控制器?
- 26. 通过视图导航时崩溃
- 27. Segue从CollectionViewCell另一个视图控制器通过IndexPath
- 28. 视图控制器过渡
- 29. 保持视图在导航控制器
- 30. Xcode,导航视图控制器
您可以创建一个视图控制器数组并将其设置为'navigationController.viewControllers'。 –