現在タブバーを使用して画面の切り替えを行なっています。
ある特定のボタンを押した際にViewController
をModal
で表示したいと思っています。
*イメージ的にはインスタグラムのカメラボタンを押した際のモーダルです。
検索したところ、下記のコードModalCode
を使用することによって私が求めている処理を行うことができるようですが、動きませんでした。
模索しているうちにTabBar→NavigationController→TweetSheareViewControllerとなっているためだとわかりました。
中間のナビゲーションコントローラーを消したところ下記のコードでも動きました。
そこでタイトルの通り併用した場合のModal
での表示はどのようにコードを書けばよろしいでしょうか
TabBarModal
1 func tabBarController(_ tabBarController: UITabBarController, shouldSelect viewController: UIViewController) -> Bool { 2 if viewController is ShareTweetViewController { //もしShareTweetViewController.swiftをclass指定してあるページ行きのボタンをタップしたら 3 if let newVC = tabBarController.storyboard?.instantiateViewController(withIdentifier: "ShareTweetViewController"){ //withIdentifier: にはStory Board IDを設定 4 tabBarController.present(newVC, animated: true, completion: nil)//newVCで設定したページに遷移 5 return false 6 } 7 } 8 return true 9 } 10
回答2件
あなたの回答
tips
プレビュー