Whatsappには4つのタブがあります。連絡先へのアクセスを無効にすると、最初のタブである[お気に入り]のビューが情報ビューに置き換えられ、ユーザーは設定を開くことができます。TabbarControllerのViewControllerをNavigationBarで置き換えます。
私は(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の通常のビューのようなナビゲーションバーでこのビューを表示するのですか?
ありがとうございます。
設定を変更する方法を説明するだけでなく、実際にボタンをタップするように指定できるようになり、設定に反映されるようになりました。 – ryantxr
こんにちはryantxr、これは私がやろうとしていたものです。私のコードは、連絡先アクセスの設定を検出します。いいえに設定した場合は、新しいView Controllerを表示してアクセス理由を通知し、設定を開くためのボタンを表示します。 Alert ViewControllerはこのように動作しますが、あまりにも醜いです。 –