注:最初の答えは、プログラムによってtabBarを作成することでした。しかし、Josep(質問者)は既にStoryboardを介して作成されたtabBarを持っているので、私はここの答えを必要に応じて変更します。
仮定:
(1)TabBarのがUITabBarViewControllerを使用して作成されました。クラス名:TabBarViewController
(2)最初は、TabbarはWeekendVC、WeekdayVC、OtherVCで構成されています。
(3)条件に基づいて、Tabbarは(WeekendVCとOtherVC)または(WeekdayVCとOtherVC)のみになります。あなたは答えに満足し、それを受け入れ、upvoteしてください場合は
import UIKit
enum TypeOfDay {
case weekday
case weekend
}
class TabBarViewController: UITabBarController {
var typeOfDay: TypeOfDay = .weekday
override func viewDidLoad() {
super.viewDidLoad()
// Initial order is: WeekendVC, WeekdayVC, OtherVC
if let currentViewControllers = self.viewControllers {
let weekendVC = currentViewControllers[0]
let weekdayVC = currentViewControllers[1]
let otherVC = currentViewControllers[2]
switch typeOfDay {
case .weekend:
self.viewControllers = [weekendVC, otherVC]
case .weekday:
self.viewControllers = [weekdayVC, otherVC]
}
}
}
}
:ここ
はTabBarViewControllerがどのように見えるかです。さらなる質問がある場合は、コメントを追加してください。 – Wismin
ありがとうございます、私の最後の選択肢でした。ポイントは私がこのプロジェクトで6ヶ月間働いていることです。私のタブバーはストーリーボードで作成されています。最小限のコード行を追加するだけの方法はありますか?それともコードをやり直す必要がありますか? 2番目が「はい」の場合、コード内で何を変更する必要がありますか?そして、別のもの、私の最初のビューコントローラが私が切り替えなければならないものならどうですか? –
Josep、あなたの要件に合わせて答えを更新しました。そしてあなたは望むようにどんな順序でも手配することができます。答えを受け入れ、upvoteすることを忘れないでください。 – Wismin