推送视图控制器后如何保留UITabBar

时间:2018-06-18 21:18:38

标签: ios swift xcode uinavigationcontroller uitabbarcontroller

所以,我的故事板上有以下结构。 TabBar项目2就像一个"更多"选项卡,我想在推送一个新的视图控制器之后保留底部TabBar(在这种情况下,推动紫色VC)。

我在这里看到一些问题,说我应该将第2项嵌入导航控制器中。好的,如果我推动紫色VC,底部栏会继续出现。我现在遇到的问题是橙色导航栏不会消失,蓝色导航栏也不会出现。橙色导航栏应该出现在绿色vc之后,推动紫色vc后,导航栏应该会改变。我想要这个,因为如果我在紫色VC中我想回到绿色VC但是如果出现橙色导航栏,则后退按钮会返回到灰色vc。

gif正在展示当前的行为。 有人可以帮忙吗?

Storyboard Current behavior

2 个答案:

答案 0 :(得分:0)

删除项目2所属的Navigation Controller

现在您可以使用

更改导航栏颜色
 self.navigationController?.navigationBar.barTintColor = UIColor.red  //choose the color of your liking

viewDidLoad的{​​{1}}内。

答案 1 :(得分:0)

你必须编写像 -

这样的代码

1-Objective c -

productDetail *obj=[[productDetail alloc] initWithNibName:@"productDetail" bundle:nil];

obj.hidesBottomBarWhenPushed = NO;

[self.navigationController pushViewController:obj animated:NO];

<强> 2-夫特 -

var obj = productDetail(nibName: "productDetail", bundle: nil)
obj.hidesBottomBarWhenPushed = false
navigationController?.pushViewController(obj, animated: false)