在整个应用程序中重新调用应用程序委托

Re-call app delegate throughout app

我正在制作一个包含教程的 swift 应用程序。当我尝试返回到主控制器时,选项卡栏项目变成灰色(它们应该是白色的)。这是因为我在应用程序委托中设置了标签栏。有没有办法以编程方式从视图控制器调用应用程序委托?

我想调用 didFinishLaunchingWithOptions() 函数

    if let appDelegate = UIApplication.shared.delegate as? AppDelegate {
        //do something with appDelegate
    }

如果您的意思是您的应用委托中有一个方法可以将标签栏设置为自定义颜色。那么是的,(将 AppDelegate 替换为您的应用委托人的 class 名称,如果您更改了它):

let appDelegate = UIApplication.shared.delegate as? AppDelegate

appDelegate?.yourCustomizeMethod()

如果你的意思是,你在 "didFinishLaunchingWithOptions" 方法中自定义你的标签栏,那么你必须将它提取到它自己的自定义函数中。