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

Posted

技术标签:

【中文标题】如何在段索引更改上隐藏 ButtonBarPagerTabStripViewController 的子视图控制器【英文标题】:Ho to hide Childe View Controller of ButtonBarPagerTabStripViewController on segment index chnage 【发布时间】:2018-05-24 12:09:20 【问题描述】:

您好,我在段控制器索引更改时使用ButtonBarPagerTabStripViewControllerpager

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

我用过

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

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

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

【问题讨论】:

【参考方案1】:

要将您的 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() 再次调用委托方法以重新加载选项卡

【讨论】:

以上是关于如何在段索引更改上隐藏 ButtonBarPagerTabStripViewController 的子视图控制器的主要内容,如果未能解决你的问题,请参考以下文章

Greenplum问题:函数无法在段上执行,因为它访问关系

如何将隐藏字段值访问到私有方法中?

如何以编程方式更改 Angular Kendo UI 网格页面索引?

如何改进此算法以优化运行时间(在段中查找点)

如何在 Flutter 上更改颜色索引。你好,我想用值''einmal'改变索引的颜色

在段树中查询