gpt4 book ai didi

ios - 如何在 hidesBottomBarWhenPushed 为 "TRUE"时隐藏自定义标签栏按钮

转载 作者:可可西里 更新时间:2023-11-01 02:59:05 26 4
gpt4 key购买 nike

我正在使用 Tito 的代码片段将自定义按钮添加到我的标签栏: https://github.com/tciuro/CustomTabBar

(子类化 UITabbarController 并使用添加自定义按钮

// .. created a UIButton *button
[self.view addSubview:button];

)

这对我的基于 Storyboard的应用程序非常有用,除了导航 Controller 中的 subview 启用了选项“推送时隐藏底部栏”的情况。这会按照 promise 隐藏标签栏,但不会隐藏自定义按钮。似乎按钮应该作为 subview 添加到选项卡栏本身?我试过这个丑陋的代码,它甚至没有让按钮出现:

for(UIView *view in self.view.subviews)
{
if([view isKindOfClass:[UITabBar class]])
{
[view addSubview:button];
break;
}
}

有什么想法吗?

更新:我的解决方案:在我的 ApplicationDelegate 中,我定义了以下方法,我会在 viewWillAppear 或 viewWillDisappear 方法中需要时调用这些方法:

-(void)hideCenterButton:(BOOL)animated
{
if(animated){

[UIView animateWithDuration:0.3
delay:0.0f
options:UIViewAnimationCurveLinear
animations:^{
CGRect frame = self.centerButton.frame;
frame.origin.x = -100;
self.centerButton.frame = frame;
}
completion:^(BOOL finished){
}];
}
}

-(void)showCenterButton:(BOOL)animated
{
if(animated){

[UIView animateWithDuration:0.35
delay:0.0f
options:UIViewAnimationCurveLinear
animations:^{
CGRect frame = self.centerButton.frame;
frame.origin.x = (self.view.superview.frame.size.width / 2) - (self.centerButton.frame.size.width / 2);
self.centerButton.frame = frame;
}
completion:^(BOOL finished){
}];
}
}

我必须将动画的持续时间设置为 0.35 秒才能获得与标签栏协调的平滑效果。

最佳答案

为什么不让按钮成为标签栏的一部分。

tabBarController.tabBar.addSubView(yourButton)

一切都会解决的。干杯!

关于ios - 如何在 hidesBottomBarWhenPushed 为 "TRUE"时隐藏自定义标签栏按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11225696/

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