gpt4 book ai didi

ios - YALFoldingTabBarController 根据所选的 ViewController 更改 centerButtonImage

转载 作者:行者123 更新时间:2023-11-28 08:58:24 24 4
gpt4 key购买 nike

我正在为项目使用 YALFoldingTabBar https://github.com/Yalantis/FoldingTabBar.iOS

我想稍微改变一下它的行为,将当前的 ViewController 显示为 centerButtonImage,而不是加号/叉号。

我试过像这样覆盖 didSelectItem:

   override func tabBar(tabBar: UITabBar, didSelectItem item: UITabBarItem!) {

switch(self.selectedIndex)
{
case 0:
self.centerButtonImage = UIImage(named: "whatever")
default:
//Change image
}

switch (self.selectedViewController)
{
case 0 as GameViewController:
//Change image
default:
//Change image
}
}

下面的代码在我的 CustomTabBar 中,是 YALFoldingTabBarController 的子类。

但是好像不是这样的。我还尝试在特定的 UIViewControllersviewDidLoadviewDidAppear 中操作 tabBar,但似乎只设置了 tabBar。

这可能吗?如果可能,我做错了什么?

编辑:似乎在更改 viewController 时未调用该方法。

最佳答案

我从来没有让 didSelectItem 工作,UITabBarControllerDelegate 也没有。但是,YALFoldingTabBar 具有委托(delegate)方法 tabBarViewWillExpandtabBarViewWillCollapse,我将它们与 tabBarView.layoutSubviews() 一起使用来解决我的问题。它不是很漂亮,但可以按预期工作。

func tabBarViewWillExpand(tabBarView: YALFoldingTabBar!) {

self.centerButtonImage = UIImage(named: "plus_icon")
//Helper method from other thread, link below
performBlock({ () -> Void in
tabBarView.layoutSubviews()
}, afterDelay: 0.25)
}

How do you trigger a block after a delay, like -performSelector:withObject:afterDelay:?

关于ios - YALFoldingTabBarController 根据所选的 ViewController 更改 centerButtonImage,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32488195/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com