如何使用MDCTabBar

时间:2018-03-10 14:57:26

标签: ios swift material-components

我使用MDCTabBar创建了一个应用程序,它看起来很完美,但我不知道如何使用它设置childView 我已经做的是:

let Tab = MDCTabBar()
Tab.items = [some items]
Tab.itemAppearance = .titles
    Tab.autoresizingMask = [.flexibleWidth, .flexibleBottomMargin, .flexibleTopMargin]

Tab.sizeToFit()
Tab.tintColor = UIColor.green
Tab.barTintColor = UIColor.black
Tab.selectedItem = Tab.items.first
Tab.selectedItem = Tab.items.first
appBar.headerStackView.bottomBar = Tab

2 个答案:

答案 0 :(得分:1)

MDCTabBar本身只是一个视图 - 您可以设置一个委托来通知所选标签的更改,但您必须自己交换视图控制器。

相反,请尝试MDCTabBarController,它会为您管理视图控制器,并在用户选择不同的标签时在它们之间切换。

答案 1 :(得分:1)

创建类似于以下代码的视图:

 @IBOutlet weak var container: UIView!
 var tabBar = MDCTabBar()

  viewType = self.viewTypeDict[0]

    tabBar = MDCTabBar(frame: container.bounds)

    tabBar.items = [ UITabBarItem(title: "Type1", image: nil, tag: 0),
                     UITabBarItem(title: "Type2", image: nil, tag: 1),
                     UITabBarItem(title: "Type3", image: nil, tag: 2),
                     UITabBarItem(title: "Type4", image: nil, tag: 3)
    ]
    tabBar.selectedItem = tabBar.items[0]
    tabBar.delegate = self

    tabBar.itemAppearance = .titles
    tabBar.alignment = .justified
    tabBar.tintColor = UIColor.white
    tabBar.barTintColor = self.navigationController?.navigationBar.barTintColor
    tabBar.autoresizingMask = [.flexibleWidth, .flexibleBottomMargin]
    tabBar.sizeToFit()
    tabBar.bottomDividerColor = UIColor.white
    container.addSubview(tabBar)