【问题标题】:Tab Bar : interaction between tabsTab Bar : 选项卡之间的交互
【发布时间】:2017-03-07 18:56:35
【问题描述】:

我在应用中有一个主 TabBarVC,它包含 2 个选项卡(2 个 VC)。

其中一个选项卡是 Map VC(显示谷歌地图)。 VC应该怎么互不联系啊。

发生了,我需要将显示的坐标从第一个选项卡发送到第二个选项卡(地图 vc)。

我的第一个想法是创建 MapVC 类的变量并展示它。 但我有 TabBarVC,我必须更改 selectionIndex :

self.tabBarController?.selectedIndex = 2

还是不行?)

它有效,我在 MapVC 类中创建了静态变量 (lat,lon),并在更改 selectedIndex 之前设置了这个静态变量。更改选项卡后,调用 mapVC 的 viewDidLoad 函数,我可以在地图上显示位置。好的。

问题:如果我将选项卡更改为第一个并按下按钮(在第二个选项卡上显示位置),MapVC 的 viewDidLoad 将不会运行,因为已经在创建。我不能调用 MapVC(第二个选项卡)的任何功能,因为我没有创建它,它只是一个创建自身的选项卡..

代表、协议...有什么可以帮助我的?

谢谢!

【问题讨论】:

    标签: ios swift delegates uitabbarcontroller


    【解决方案1】:

    在FirstVC的show action中,获取MapVC:

    if let mapVC = self.tabBarController.viewControllers[1] as? YourViewController {
        // you can use public properties of MapVC here
    }
    

    【讨论】:

    • 非常感谢你,朋友!
    猜你喜欢
    • 2019-12-06
    • 1970-01-01
    • 2016-07-01
    • 2020-03-17
    • 1970-01-01
    • 2019-05-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多