如何在段索引更改上隐藏 ButtonBarPagerTabStripViewController 的子视图控制器

Ho to hide Childe View Controller of ButtonBarPagerTabStripViewController on segment index chnage

您好,我正在为 pager 使用 ButtonBarPagerTabStripViewController,段控制器索引更改

我想隐藏 ButtonBarPagerTabStripViewController 的一个子视图控制器。

我用了

override public func viewControllers(for pagerTabStripController: PagerTabStripViewController) -> [UIViewController] { }

此委托方法用于在 ButtonBarPagerTabStripViewController 中添加视图控制器。

如何隐藏 ButtonBarPagerTabStripViewController 的任何子视图控制器。

要将您的 UIViewController 添加到您的 pagerTabStripController,您应该有类似的内容:

// MARK: - XLPagerTabStrip required override methods

override public func viewControllers(for pagerTabStripController: PagerTabStripViewController) -> [UIViewController] {
    return buildViewControllers()
}

// Build the tabs in the tabBar.
func buildViewControllers() -> [UIViewController] {

    // Add custom viewControllers here.

    let aViewController = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "YOUR_IDENTIFIER") as! YOUR_VIEW_CONTROLLER
    let bViewController = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "YOUR_IDENTIFIER") as! YOUR_VIEW_CONTROLLER

    // Other...    

    return [aViewController, bViewController]
}

要隐藏特定的 UIViewController 只需将其从 UIViewController 数组 中删除,然后使用 reloadPagerTabStripView() 再次调用委托方法重新加载选项卡