概要
・Swift5
・Xcode 11.3
での検証になります!
こちらは、個人的なメモ書きとして残しております。
参考になった方は「いいね!」をしてもらえると嬉しいです。
実装例
前提条件
・ 追加StoryBoardには、TabbarItemがついていることを想定しています。
・ 5つ目追加したり、削除したりする処理になっています。
・ ViewController内で記載します。
追加(1番後ろに追加します)
if (self.tabBarController?.viewControllers?.count ?? 5) > 4 { return }
guard let viewControllers = self.tabBarController?.viewControllers else { return }
if viewControllers.count > 4 { return }
let storyboard = UIStoryboard(name: "xxxxxxx", bundle: nil)
guard let viewController = storyboard.instantiateInitialViewController() else { return }
self.tabBarController?.viewControllers?.append(viewController)
// self.tabBarController?.viewControllers? を viewControllersにするとうまく動かないので注意ですm(_ _)m
削除(1番最後の分を削除する)
guard let viewControllers = self.tabBarController?.viewControllers else { return }
if viewControllers.count != 5 { return }
self.tabBarController?.viewControllers?.removeLast()