123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- //
- // MainTabBarController.swift
- // JSJP_Student_sw
- //
- // Created by Ning.ge on 2023/5/30.
- //
- import UIKit
- import ReactorKit
- import RxCocoa
- import RxSwift
- final class MainTabBarController: UITabBarController, View {
-
- // MARK: Constants
-
- fileprivate struct Metric {
- static let tabBarHeight = 50.f
- }
-
- // MARK: Properties
-
- var disposeBag = DisposeBag()
- // init(
- // reactor: MainTabBarViewReactor,
- // homeParentViewController:HomeParentViewController,
- // timekeepViewController:TimeKeepParentViewController,
- // mineListViewController:MineParentViewController
- // ) {
- // defer { self.reactor = reactor }
- // super.init(nibName: nil, bundle: nil)
- // self.viewControllers = [homeParentViewController,
- // timekeepViewController,
- // mineListViewController]
- // .map{ (viewController) -> UINavigationController in
- // let navigationController = MainNavigationController(rootViewController: viewController)
- //// navigationController.tabBarItem.imageInsets.top = 5
- //// navigationController.tabBarItem.imageInsets.bottom = 5
- // navigationController.tabBarItem.titlePositionAdjustment = UIOffset(horizontal: 0, vertical: -3)
- // return navigationController
- // }
- // self.tabBar.barTintColor = .db_white
- // }
-
- required init?(coder aDecoder: NSCoder) {
- fatalError("init(coder:) has not been implemented")
- }
- // MARK: Configuring
-
- func bind(reactor: MainTabBarViewReactor) {
-
- self.rx.didSelect
- .scan((nil, nil)) { state, viewController in
- return (state.1, viewController)
- }.subscribe(onNext: { (fromVc,toVc) in
-
- // if fromVc == toVc || fromVc == nil {
- // TogetherDataManager.refreshDataForTab(toVc, true)
- // } else {
- // TogetherDataManager.refreshDataForTab(toVc, false)
- // }
- // if TogetherDataManager.homePageController(toVc) == nil {
- // TogetherDataManager.referenceDate = Date()
- // }
- }).disposed(by: disposeBag)
- }
-
-
- override func viewDidLayoutSubviews() {
- super.viewDidLayoutSubviews()
- self.tabBar.barTintColor = .db_tbbg
- if #available(iOS 11.0, *) {
- self.tabBar.height = Metric.tabBarHeight + self.view.safeAreaInsets.bottom
- } else {
- self.tabBar.height = Metric.tabBarHeight
- }
- self.tabBar.bottom = self.view.height
- }
- }
|