2016-03-25 16 views
0

我注意到Whatsapp中有四個選項卡。如果您禁用對通訊錄的訪問,則第一個標籤中的收藏夾,收藏夾將被信息視圖取代,該視圖將指導用戶打開設置。使用NavigationBar替換TabbarController中的一個ViewController

我試圖此功能與以下(在AppDelegate中)代碼複製:

let gotoSettingsVC = UIApplication.sharedApplication().keyWindow?.rootViewController!.storyboard?.instantiateViewControllerWithIdentifier("gotoSettingsViewController") as! GotoSettingsViewController 
let tabbarController = UIApplication.sharedApplication().keyWindow?.rootViewController! as! UITabBarController 

gotoSettingsVC.tabBarItem = tabbarController.tabBar.selectedItem 
tabbarController.viewControllers![tabbarController.selectedIndex] = gotoSettingsVC 

的gotoSettingsVC可以顯示正確的,但沒有導航欄。如何使用導航欄顯示此視圖,如tabbarController中的普通View?

謝謝你的幫助。

+0

您知道,除了解釋如何更改設置之外,您現在可以實際給他們一個按鈕來點按它並將其轉到設置。 – ryantxr

+0

嗨ryantxr,這正是我想要做的。我的密碼檢測到「通訊錄」訪問權限的設置,如果設置爲「否」,我想顯示一個新的視圖控制器來告訴他們訪問的原因,然後給他們一個按鈕來打開設置。 Alert ViewController以這種方式工作,但太難看了。 –

回答

0

GotoSettingsViewController嵌入到導航控制器中,並將其設置爲其中一個tabBar控制器視圖控制器。

+0

你是說故事板?我想用代碼實現。 –

+0

我的意思是在代碼中。 – vikingosegundo

+0

對不起,但你可以給我一些示例代碼......我上面的代碼只是把GotoSettingsViewController放到tabBar控制器的視圖控制器數組中。 –

相關問題