我正在为应用程序设置快速操作。它工作正常。所以在 AppDelegate 我正在检查这样的快捷方式并调用 completionHandler 函数:
func application(_ application: UIApplication, performActionFor shortcutItem: UIApplicationShortcutItem, completionHandler: @escaping (Bool) -> Void) {
completionHandler(handleShortcut(shortcutItem: shortcutItem))
}
现在我想在 handleShortcut 函数中打开某个选项卡,但这根本不起作用。我尝试将其加载为带有 storyboardID 的视图并将其添加为 rootViewController,但我什至不确定这是否可行,或者这是否是正确的方法:
let storyBoard: UIStoryboard = UIStoryboard(name: "Main", bundle:nil)
let vc = storyBoard.instantiateViewController(withIdentifier: "tabBar")
self.window = UIWindow(frame: UIScreen.main.bounds)
self.window?.rootViewController = vc
self.window?.makeKeyAndVisible()
但显然我不能使用tabBarController?.selectedIndex = 2
例如访问第三个选项卡。
通过快速操作访问我的 tabBarController 中的另一个选项卡(并显示它)的正确方法是什么?