从标签栏应用程序中的任何位置调用方法 swift

Call a method from anywhere in a tabbar application swift

我有一个带有 4 个不同 ViewController 的 tabBar 应用程序。 是否可以从所有 4 个视图调用相同的方法,我必须将方法放在哪里? 郑重声明,这只是显示 iAd 横幅的调用。

谢谢

这行得通。创建 UITabBarController 的自定义子 class。把你的功能放在那里。确保将 Storyboard 中 TabBarController 的 class 更改为 CustomTabBarController.

class CustomTabBarController: UITabBarController {

    override func viewDidLoad() {
        super.viewDidLoad()

        // Do any additional setup after loading the view.
    }

    func myFunctionToCallFromAnywhere() {
        print("Hey, it works")
    }
}

然后在由 TabBarController 管理的 viewController 中,您可以这样调用函数:

(self.tabBarController as? CustomTabBarController)?.myFunctionToCallFromAnywhere()