如何从另一个视图控制器实例化导航控制器?

气枪怪胎

我的目标是每当我单击第一个视图控制器上的按钮时,它将导航到另一个控制器,即导航控制器。

firstViewController和secondViewController没有任何连接。

图片

在此处输入图片说明

我用了这段代码

 @IBAction func buttonTapped(sender: UIButton) {

     let storyboard = UIStoryboard(name: "Main", bundle: nil)
     let vc = storyboard.instantiateViewControllerWithIdentifier("secondViewCtrl") as! SecondViewController
     self.presentViewController(vc, animated: true, completion: nil)

 }

我之所以如此低落以使我可以像这样传递数据的原因

vc.name = "Myname"

此代码的问题在于,它不显示导航栏和选项卡栏。我该怎么做才能显示两者?

更新的问题

 @IBAction func buttonTapped(sender: UIButton) {
    guard let tabBarController = tabBarController else { return }
            tabBarController.selectedIndex = 1


            let storyboard = UIStoryboard(name: "Main", bundle: nil)
            let vc = storyboard.instantiateViewControllerWithIdentifier("trackYourGenie") as! TrackYourGenieViewController
            let navController = tabBarController.viewControllers![1]
            let secondViewController = navController.topViewController
            vc.name = "Myname"


 }
亚历山德罗·奥纳诺(Alessandro Ornano)

一种安全的方法:

guard let tabBarController = tabBarController else { return }
tabBarController.selectedIndex = 1

如果您需要访问tabBarController来传递数据,则可以简单地执行以下操作:

let navController = tabBarController.viewControllers[1]! as! UINavigationController
let secondViewController = navController.topViewController

您的方法可能是:

@IBAction func buttonTapped(sender: UIButton) {
    guard let tabBarController = tabBarController else { return }
    let navController = tabBarController.viewControllers[1]! as! UINavigationController
    let secondViewController = navController.topViewController as! SecondViewController
    secondViewController.name = "my name"
    tabBarController.selectedIndex = 1
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何从另一个位于segue中的视图控制器实例化导航和标签控制器(显示详细信息)?

来自分类Dev

实例化另一个视图控制器时如何传递数据

来自分类Dev

如何为视图控制器创建嵌入到导航控制器中的另一个视图控制器的序列?

来自分类Dev

如何通过控制器返回另一个控制器的局部视图?

来自分类Dev

无法找到导航控制器来导航另一个视图控制器

来自分类Dev

用另一个导航控制器替换当前的导航控制器

来自分类Dev

弹出导航控制器层次结构中的另一个视图控制器

来自分类Dev

将数据传递到导航控制器中的另一个视图控制器

来自分类Dev

用另一个视图控制器快速更改视图控制器

来自分类Dev

从另一个视图控制器通知视图控制器

来自分类Dev

用另一个视图控制器快速更改视图控制器

来自分类Dev

解除视图控制器并显示另一个视图控制器

来自分类Dev

调用另一个视图控制器

来自分类Dev

如何关闭当前的视图控制器并在iOS中推送另一个视图控制器

来自分类Dev

如何解散模态视图控制器,然后立即让呈现视图控制器呈现另一个模态视图控制器?

来自分类Dev

如何将数据从一个视图控制器传递到另一个视图控制器,并且在视图控制器之间有一个显示视图控制器

来自分类Dev

如何将数据从一个视图控制器传递到导航控制器中嵌入的另一个视图控制器

来自分类Dev

Swift-使用导航栏显示另一个视图控制器

来自分类Dev

如何从一个导航控制器推送到多个视图控制器?

来自分类Dev

ExtJS初始化控制器在另一个控制器中

来自分类Dev

从一个视图控制器从另一个视图控制器加载函数

来自分类Dev

AngularJS:如何从另一个控制器中动态初始化模板中的控制器

来自分类Dev

AngularJS:如何从另一个控制器中动态初始化模板中的控制器

来自分类Dev

Autowired属性即使在另一个控制器中实例化也提供null

来自分类Dev

在另一个控制器中创建实例化对象可以吗?

来自分类Dev

如何从控制器动作中调用另一个控制器动作?

来自分类Dev

如何从另一个控制器访问需求控制器?

来自分类Dev

如何在集合视图控制器上添加另一个滚动视图?

来自分类Dev

如何在集合视图控制器上添加另一个滚动视图?

Related 相关文章

  1. 1

    如何从另一个位于segue中的视图控制器实例化导航和标签控制器(显示详细信息)?

  2. 2

    实例化另一个视图控制器时如何传递数据

  3. 3

    如何为视图控制器创建嵌入到导航控制器中的另一个视图控制器的序列?

  4. 4

    如何通过控制器返回另一个控制器的局部视图?

  5. 5

    无法找到导航控制器来导航另一个视图控制器

  6. 6

    用另一个导航控制器替换当前的导航控制器

  7. 7

    弹出导航控制器层次结构中的另一个视图控制器

  8. 8

    将数据传递到导航控制器中的另一个视图控制器

  9. 9

    用另一个视图控制器快速更改视图控制器

  10. 10

    从另一个视图控制器通知视图控制器

  11. 11

    用另一个视图控制器快速更改视图控制器

  12. 12

    解除视图控制器并显示另一个视图控制器

  13. 13

    调用另一个视图控制器

  14. 14

    如何关闭当前的视图控制器并在iOS中推送另一个视图控制器

  15. 15

    如何解散模态视图控制器,然后立即让呈现视图控制器呈现另一个模态视图控制器?

  16. 16

    如何将数据从一个视图控制器传递到另一个视图控制器,并且在视图控制器之间有一个显示视图控制器

  17. 17

    如何将数据从一个视图控制器传递到导航控制器中嵌入的另一个视图控制器

  18. 18

    Swift-使用导航栏显示另一个视图控制器

  19. 19

    如何从一个导航控制器推送到多个视图控制器?

  20. 20

    ExtJS初始化控制器在另一个控制器中

  21. 21

    从一个视图控制器从另一个视图控制器加载函数

  22. 22

    AngularJS:如何从另一个控制器中动态初始化模板中的控制器

  23. 23

    AngularJS:如何从另一个控制器中动态初始化模板中的控制器

  24. 24

    Autowired属性即使在另一个控制器中实例化也提供null

  25. 25

    在另一个控制器中创建实例化对象可以吗?

  26. 26

    如何从控制器动作中调用另一个控制器动作?

  27. 27

    如何从另一个控制器访问需求控制器?

  28. 28

    如何在集合视图控制器上添加另一个滚动视图?

  29. 29

    如何在集合视图控制器上添加另一个滚动视图?

热门标签

归档