我在我的應用上使用推送通知。因此,當我收到通知並觸摸它時,我想要轉到另一個UITabbarcontroller
,但是當我這樣做時,該應用只顯示UINavigationbar
,而不是UITabbarcontroller
。這是一個截圖 - >如何通過推送通知從AppDelegate打開特定的uitabbarcontroller?
這我的代碼。
let vc = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "RequestDriverViewController") as! RequestDriverViewController
let nc = UINavigationController(rootViewController: vc)
self.window = UIWindow(frame: UIScreen.main.bounds)
self.window?.rootViewController = nc
self.window?.makeKeyAndVisible()
請仔細閱讀章節「響應通知和事件」的文檔:https://developer.apple.com/reference/uikit/uiapplicationdelegate – matt
您需要提供有關導航控制器/選項卡欄控制器層次結構的詳細信息。通常有一個sibfly標籤欄控制器,其中又包含幾個導航控制器,所以通常的做法是切換到所需的選項卡,可能會彈出不需要的視圖控制器,但您的具體情況可能完全不同...... – jcaron
@ jcaron感謝您的評論,真的有很多幫助,我有很多工作,因此我看不到我應該先訪問UItabbarcontroller標識符,然後再發送給UIViewcontroller。所以這個我用來解決我的問題的代碼: 讓vc = UIStoryboard(name:「Main」,bundle:nil).instantiateViewController(withIdentifier:「TabBarIdentifier」)as!的UITabBarController self.window =的UIWindow?(幀:UIScreen.main.bounds) self.window .rootViewController = VC self.window .makeKeyAndVisible() 非常感謝 –