【发布时间】:2015-09-01 15:39:10
【问题描述】:
[self addChildViewController:self.redVC];
[self.view addSubview:self.redVC.view];
[self.redVC didMoveToParentViewController:self];
“self”是一个tabBarController,“redVC”是一个测试VC。我希望完整的生命周期(例如 viewDidAppear 和旋转链)传递给 childViewController(redVC),所以我使用 childVC。但是,此方法将显示 tabBar。
当只是将 self.redVC.view 放在 self.view 之上,而不是通过 addChildViewController。 tabBar 可以被覆盖。 Overlay a view over whole screen, when using UITabBarController?.
同时,我可能会在 tabBarViewController 的视图中添加一个透明视图,在这种情况下,应该可以看到 tabBar。因此,我不想更改 tabBar 的框架或隐藏它。
有没有办法实现所有这些?
- 父视图控制器的完整生命周期传递和旋转链
- 要添加的全屏视图(如果此视图是透明的,应该可以看到工具栏)
- 不要更改或隐藏 tabBar
【问题讨论】:
-
你先写:“但是,这个方法会显示tabBar。”然后“不要更改或隐藏 tabBar”-> 那么你想让 tabbar 可见还是不可见?
-
@Vive 对不起我的英语不好,我添加了三个条件。我想让 tabBar 可见。
-
那你为什么不直接 pushViewController..?
-
我已经编辑了我的答案,以展示如何推送该视图并保持 tabBar 可见。
标签: ios objective-c uitabbarcontroller childviewcontroller