我有一個視圖控制器作爲我的初始視圖控制器。 有一個按鈕(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'。 –